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,410 +1 @@
|
|
|
1
|
-
const { getOwnerConfig, setOwnerConfig, getGroupConfig, setGroupConfig, parseToggleCommand } = require('../../Database/settingsStore');
|
|
2
|
-
const db = require('../../Database/database');
|
|
3
|
-
const { createFakeContact, getBotName } = require('../../davelib/fakeContact');
|
|
4
|
-
|
|
5
|
-
const originalMessages = new Map();
|
|
6
|
-
const MAX_STORED_MESSAGES = 5000;
|
|
7
|
-
const MESSAGE_RETENTION_MS = 604800000;
|
|
8
|
-
|
|
9
|
-
async function isAuthorized(sock, message) {
|
|
10
|
-
try {
|
|
11
|
-
const senderId = message.key.participant || message.key.remoteJid;
|
|
12
|
-
if (message.key.fromMe) return true;
|
|
13
|
-
return db.isSudo(senderId);
|
|
14
|
-
} catch {
|
|
15
|
-
return message.key.fromMe;
|
|
16
|
-
}
|
|
17
|
-
}
|
|
18
|
-
|
|
19
|
-
function normalizeOwnerConfig(raw) {
|
|
20
|
-
if (!raw || typeof raw !== 'object') {
|
|
21
|
-
return { gc: { enabled: true, mode: 'private' }, pm: { enabled: true, mode: 'private' } };
|
|
22
|
-
}
|
|
23
|
-
if (raw.gc && raw.pm) return raw;
|
|
24
|
-
const enabled = raw.enabled !== undefined ? raw.enabled : true;
|
|
25
|
-
const mode = raw.mode || 'private';
|
|
26
|
-
return { gc: { enabled, mode }, pm: { enabled, mode } };
|
|
27
|
-
}
|
|
28
|
-
|
|
29
|
-
function getEffectiveConfig(chatId) {
|
|
30
|
-
const isGroup = chatId.endsWith('@g.us');
|
|
31
|
-
if (isGroup) {
|
|
32
|
-
if (db.hasGroupSetting(chatId, 'antiedit')) {
|
|
33
|
-
const groupConf = getGroupConfig(chatId, 'antiedit');
|
|
34
|
-
if (typeof groupConf === 'object' && groupConf.enabled !== undefined) {
|
|
35
|
-
return groupConf;
|
|
36
|
-
}
|
|
37
|
-
}
|
|
38
|
-
const ownerRaw = getOwnerConfig('antiedit');
|
|
39
|
-
const ownerConf = normalizeOwnerConfig(ownerRaw);
|
|
40
|
-
return { enabled: ownerConf.gc.enabled, mode: ownerConf.gc.mode };
|
|
41
|
-
} else {
|
|
42
|
-
const ownerRaw = getOwnerConfig('antiedit');
|
|
43
|
-
const ownerConf = normalizeOwnerConfig(ownerRaw);
|
|
44
|
-
return { enabled: ownerConf.pm.enabled, mode: ownerConf.pm.mode };
|
|
45
|
-
}
|
|
46
|
-
}
|
|
47
|
-
|
|
48
|
-
async function antieditCommand(sock, chatId, message, args) {
|
|
49
|
-
const isGroup = chatId.endsWith('@g.us');
|
|
50
|
-
const senderId = message.key.participant || message.key.remoteJid;
|
|
51
|
-
const botName = getBotName();
|
|
52
|
-
const fake = createFakeContact(senderId);
|
|
53
|
-
|
|
54
|
-
if (isGroup) {
|
|
55
|
-
try {
|
|
56
|
-
const groupMetadata = await sock.groupMetadata(chatId);
|
|
57
|
-
const participant = groupMetadata.participants.find(p => p.id === senderId);
|
|
58
|
-
if (!participant?.admin && !message.key.fromMe && !db.isSudo(senderId)) {
|
|
59
|
-
return sock.sendMessage(chatId, {
|
|
60
|
-
text: `*${botName}*\nAdmin only command!`
|
|
61
|
-
}, { quoted: fake });
|
|
62
|
-
}
|
|
63
|
-
} catch {}
|
|
64
|
-
} else {
|
|
65
|
-
if (!await isAuthorized(sock, message)) {
|
|
66
|
-
return sock.sendMessage(chatId, {
|
|
67
|
-
text: `*${botName}*\nOwner only command!`
|
|
68
|
-
}, { quoted: fake });
|
|
69
|
-
}
|
|
70
|
-
}
|
|
71
|
-
|
|
72
|
-
const ownerRaw = getOwnerConfig('antiedit');
|
|
73
|
-
const ownerConf = normalizeOwnerConfig(ownerRaw);
|
|
74
|
-
const sub = (args || '').trim().toLowerCase();
|
|
75
|
-
|
|
76
|
-
if (!sub) {
|
|
77
|
-
const { getPrefix } = require('../owner/setprefix');
|
|
78
|
-
const p = getPrefix();
|
|
79
|
-
let groupStatus = '';
|
|
80
|
-
if (isGroup) {
|
|
81
|
-
const gc = getEffectiveConfig(chatId);
|
|
82
|
-
groupStatus = `This Group: ${gc.enabled ? 'ON' : 'OFF'} (${gc.mode})\n`;
|
|
83
|
-
}
|
|
84
|
-
const helpText = `*${botName} ANTIEDIT*\n\n` +
|
|
85
|
-
`Groups: ${ownerConf.gc.enabled ? 'ON' : 'OFF'} (${ownerConf.gc.mode})\n` +
|
|
86
|
-
`PMs: ${ownerConf.pm.enabled ? 'ON' : 'OFF'} (${ownerConf.pm.mode})\n` +
|
|
87
|
-
`Tracked: ${originalMessages.size} messages\n\n` +
|
|
88
|
-
`*Commands:*\n` +
|
|
89
|
-
`${p}antiedit on — Enable all\n` +
|
|
90
|
-
`${p}antiedit off — Disable all\n` +
|
|
91
|
-
`${p}antiedit private — Notify in your DM\n` +
|
|
92
|
-
`${p}antiedit chat — Notify in same chat\n` +
|
|
93
|
-
`${p}antiedit both — Notify in DM + chat\n` +
|
|
94
|
-
`${p}antiedit gc off — Disable groups only\n` +
|
|
95
|
-
`${p}antiedit gc on — Enable groups only\n` +
|
|
96
|
-
`${p}antiedit pm off — Disable PMs only\n` +
|
|
97
|
-
`${p}antiedit pm on — Enable PMs only\n` +
|
|
98
|
-
`${p}antiedit status — Show status`;
|
|
99
|
-
|
|
100
|
-
await sock.sendMessage(chatId, { text: helpText }, { quoted: fake });
|
|
101
|
-
return;
|
|
102
|
-
}
|
|
103
|
-
|
|
104
|
-
let responseText = '';
|
|
105
|
-
const parts = sub.split(/\s+/);
|
|
106
|
-
const scope = parts[0];
|
|
107
|
-
const action = parts[1] || '';
|
|
108
|
-
|
|
109
|
-
if (scope === 'gc' || scope === 'group' || scope === 'groups') {
|
|
110
|
-
const toggle = parseToggleCommand(action);
|
|
111
|
-
if (toggle === 'on') {
|
|
112
|
-
ownerConf.gc.enabled = true;
|
|
113
|
-
setOwnerConfig('antiedit', ownerConf);
|
|
114
|
-
responseText = `*${botName}*\nAntiEdit GROUPS: ON\nMode: ${ownerConf.gc.mode}`;
|
|
115
|
-
} else if (toggle === 'off') {
|
|
116
|
-
ownerConf.gc.enabled = false;
|
|
117
|
-
setOwnerConfig('antiedit', ownerConf);
|
|
118
|
-
responseText = `*${botName}*\nAntiEdit GROUPS: OFF`;
|
|
119
|
-
} else if (['private', 'prvt', 'priv', 'pm'].includes(action)) {
|
|
120
|
-
ownerConf.gc.enabled = true;
|
|
121
|
-
ownerConf.gc.mode = 'private';
|
|
122
|
-
setOwnerConfig('antiedit', ownerConf);
|
|
123
|
-
responseText = `*${botName}*\nAntiEdit GROUPS: PRIVATE\nEdit notifications sent to owner DM.`;
|
|
124
|
-
} else if (['chat', 'cht'].includes(action)) {
|
|
125
|
-
ownerConf.gc.enabled = true;
|
|
126
|
-
ownerConf.gc.mode = 'chat';
|
|
127
|
-
setOwnerConfig('antiedit', ownerConf);
|
|
128
|
-
responseText = `*${botName}*\nAntiEdit GROUPS: CHAT\nEdit notifications sent to same chat.`;
|
|
129
|
-
} else if (['both', 'all'].includes(action)) {
|
|
130
|
-
ownerConf.gc.enabled = true;
|
|
131
|
-
ownerConf.gc.mode = 'both';
|
|
132
|
-
setOwnerConfig('antiedit', ownerConf);
|
|
133
|
-
responseText = `*${botName}*\nAntiEdit GROUPS: BOTH\nEdit notifications sent to owner DM and chat.`;
|
|
134
|
-
} else {
|
|
135
|
-
responseText = `*${botName}*\nUsage: .antiedit gc on/off/private/chat/both`;
|
|
136
|
-
}
|
|
137
|
-
} else if (scope === 'pm' || scope === 'dm' || scope === 'pms' || scope === 'dms') {
|
|
138
|
-
const toggle = parseToggleCommand(action);
|
|
139
|
-
if (toggle === 'on') {
|
|
140
|
-
ownerConf.pm.enabled = true;
|
|
141
|
-
setOwnerConfig('antiedit', ownerConf);
|
|
142
|
-
responseText = `*${botName}*\nAntiEdit PMs: ON\nMode: ${ownerConf.pm.mode}`;
|
|
143
|
-
} else if (toggle === 'off') {
|
|
144
|
-
ownerConf.pm.enabled = false;
|
|
145
|
-
setOwnerConfig('antiedit', ownerConf);
|
|
146
|
-
responseText = `*${botName}*\nAntiEdit PMs: OFF`;
|
|
147
|
-
} else if (['private', 'prvt', 'priv'].includes(action)) {
|
|
148
|
-
ownerConf.pm.enabled = true;
|
|
149
|
-
ownerConf.pm.mode = 'private';
|
|
150
|
-
setOwnerConfig('antiedit', ownerConf);
|
|
151
|
-
responseText = `*${botName}*\nAntiEdit PMs: PRIVATE\nEdit notifications sent to owner DM.`;
|
|
152
|
-
} else if (['chat', 'cht'].includes(action)) {
|
|
153
|
-
ownerConf.pm.enabled = true;
|
|
154
|
-
ownerConf.pm.mode = 'chat';
|
|
155
|
-
setOwnerConfig('antiedit', ownerConf);
|
|
156
|
-
responseText = `*${botName}*\nAntiEdit PMs: CHAT\nEdit notifications sent to same chat.`;
|
|
157
|
-
} else if (['both', 'all'].includes(action)) {
|
|
158
|
-
ownerConf.pm.enabled = true;
|
|
159
|
-
ownerConf.pm.mode = 'both';
|
|
160
|
-
setOwnerConfig('antiedit', ownerConf);
|
|
161
|
-
responseText = `*${botName}*\nAntiEdit PMs: BOTH\nEdit notifications sent to owner DM and chat.`;
|
|
162
|
-
} else {
|
|
163
|
-
responseText = `*${botName}*\nUsage: .antiedit pm on/off/private/chat/both`;
|
|
164
|
-
}
|
|
165
|
-
} else if (scope === 'status') {
|
|
166
|
-
responseText = `*${botName} ANTIEDIT STATUS*\n\n` +
|
|
167
|
-
`Groups: ${ownerConf.gc.enabled ? 'ON' : 'OFF'} (${ownerConf.gc.mode})\n` +
|
|
168
|
-
`PMs: ${ownerConf.pm.enabled ? 'ON' : 'OFF'} (${ownerConf.pm.mode})\n` +
|
|
169
|
-
`Tracked: ${originalMessages.size} messages`;
|
|
170
|
-
} else {
|
|
171
|
-
const toggle = parseToggleCommand(scope);
|
|
172
|
-
if (toggle === 'on') {
|
|
173
|
-
ownerConf.gc.enabled = true;
|
|
174
|
-
ownerConf.pm.enabled = true;
|
|
175
|
-
setOwnerConfig('antiedit', ownerConf);
|
|
176
|
-
responseText = `*${botName}*\nAntiEdit ENABLED (Groups + PMs)\nMode: ${ownerConf.gc.mode}`;
|
|
177
|
-
} else if (toggle === 'off') {
|
|
178
|
-
ownerConf.gc.enabled = false;
|
|
179
|
-
ownerConf.pm.enabled = false;
|
|
180
|
-
setOwnerConfig('antiedit', ownerConf);
|
|
181
|
-
responseText = `*${botName}*\nAntiEdit DISABLED (Groups + PMs)`;
|
|
182
|
-
} else if (['private', 'prvt', 'priv'].includes(scope)) {
|
|
183
|
-
ownerConf.gc.enabled = true;
|
|
184
|
-
ownerConf.gc.mode = 'private';
|
|
185
|
-
ownerConf.pm.enabled = true;
|
|
186
|
-
ownerConf.pm.mode = 'private';
|
|
187
|
-
setOwnerConfig('antiedit', ownerConf);
|
|
188
|
-
responseText = `*${botName}*\nAntiEdit PRIVATE (all chats).\nEdit notifications → your own DM.`;
|
|
189
|
-
} else if (['chat', 'cht'].includes(scope)) {
|
|
190
|
-
ownerConf.gc.enabled = true;
|
|
191
|
-
ownerConf.gc.mode = 'chat';
|
|
192
|
-
ownerConf.pm.enabled = true;
|
|
193
|
-
ownerConf.pm.mode = 'chat';
|
|
194
|
-
setOwnerConfig('antiedit', ownerConf);
|
|
195
|
-
responseText = `*${botName}*\nAntiEdit CHAT (all chats).\nEdit notifications → same chat where edit happened.`;
|
|
196
|
-
} else if (['both', 'all'].includes(scope)) {
|
|
197
|
-
ownerConf.gc.enabled = true;
|
|
198
|
-
ownerConf.gc.mode = 'both';
|
|
199
|
-
ownerConf.pm.enabled = true;
|
|
200
|
-
ownerConf.pm.mode = 'both';
|
|
201
|
-
setOwnerConfig('antiedit', ownerConf);
|
|
202
|
-
responseText = `*${botName}*\nAntiEdit BOTH (all chats).\nEdit notifications → your DM + same chat.`;
|
|
203
|
-
} else {
|
|
204
|
-
responseText = `*${botName}*\nInvalid! Use:\n` +
|
|
205
|
-
`.antiedit on/off\n` +
|
|
206
|
-
`.antiedit private/chat/both\n` +
|
|
207
|
-
`.antiedit gc on/off - Toggle groups only\n` +
|
|
208
|
-
`.antiedit pm on/off - Toggle PMs only`;
|
|
209
|
-
}
|
|
210
|
-
}
|
|
211
|
-
|
|
212
|
-
await sock.sendMessage(chatId, { text: responseText }, { quoted: fake });
|
|
213
|
-
}
|
|
214
|
-
|
|
215
|
-
function storeOriginalMessage(message) {
|
|
216
|
-
try {
|
|
217
|
-
if (!message?.key?.id) return;
|
|
218
|
-
|
|
219
|
-
const chatId = message.key.remoteJid;
|
|
220
|
-
if (!chatId || chatId === 'status@broadcast') return;
|
|
221
|
-
|
|
222
|
-
let text = '';
|
|
223
|
-
const msg = message.message;
|
|
224
|
-
if (!msg) return;
|
|
225
|
-
|
|
226
|
-
if (msg.protocolMessage || msg.senderKeyDistributionMessage) return;
|
|
227
|
-
|
|
228
|
-
if (msg.conversation) {
|
|
229
|
-
text = msg.conversation;
|
|
230
|
-
} else if (msg.extendedTextMessage?.text) {
|
|
231
|
-
text = msg.extendedTextMessage.text;
|
|
232
|
-
} else if (msg.imageMessage?.caption) {
|
|
233
|
-
text = msg.imageMessage.caption;
|
|
234
|
-
} else if (msg.videoMessage?.caption) {
|
|
235
|
-
text = msg.videoMessage.caption;
|
|
236
|
-
}
|
|
237
|
-
|
|
238
|
-
if (!text) return;
|
|
239
|
-
|
|
240
|
-
if (originalMessages.size >= MAX_STORED_MESSAGES) {
|
|
241
|
-
const firstKey = originalMessages.keys().next().value;
|
|
242
|
-
originalMessages.delete(firstKey);
|
|
243
|
-
}
|
|
244
|
-
|
|
245
|
-
originalMessages.set(message.key.id, {
|
|
246
|
-
text,
|
|
247
|
-
sender: message.key.participant || message.key.remoteJid,
|
|
248
|
-
chatId,
|
|
249
|
-
timestamp: Date.now(),
|
|
250
|
-
pushName: message.pushName || 'Unknown'
|
|
251
|
-
});
|
|
252
|
-
|
|
253
|
-
} catch (err) {
|
|
254
|
-
console.error('Error storing original message:', err.message, 'Line:', err.stack?.split('\n')[1]);
|
|
255
|
-
}
|
|
256
|
-
}
|
|
257
|
-
|
|
258
|
-
async function handleEditedMessage(sock, editedMessage) {
|
|
259
|
-
try {
|
|
260
|
-
const chatId = editedMessage.key?.remoteJid;
|
|
261
|
-
if (!chatId) {
|
|
262
|
-
const msg = editedMessage.message || editedMessage.update?.message;
|
|
263
|
-
const protoKey = msg?.protocolMessage?.key;
|
|
264
|
-
if (protoKey?.id) {
|
|
265
|
-
const orig = originalMessages.get(protoKey.id);
|
|
266
|
-
if (orig?.chatId) {
|
|
267
|
-
editedMessage = { ...editedMessage, key: { ...editedMessage.key, remoteJid: orig.chatId } };
|
|
268
|
-
} else {
|
|
269
|
-
return;
|
|
270
|
-
}
|
|
271
|
-
} else {
|
|
272
|
-
return;
|
|
273
|
-
}
|
|
274
|
-
}
|
|
275
|
-
|
|
276
|
-
const resolvedChatId = editedMessage.key.remoteJid;
|
|
277
|
-
|
|
278
|
-
let messageId = editedMessage.key.id;
|
|
279
|
-
|
|
280
|
-
const msg = editedMessage.message;
|
|
281
|
-
if (msg?.protocolMessage?.key?.id) {
|
|
282
|
-
messageId = msg.protocolMessage.key.id;
|
|
283
|
-
}
|
|
284
|
-
|
|
285
|
-
if (editedMessage.update?.message?.protocolMessage?.key?.id) {
|
|
286
|
-
messageId = editedMessage.update.message.protocolMessage.key.id;
|
|
287
|
-
}
|
|
288
|
-
|
|
289
|
-
const original = originalMessages.get(messageId);
|
|
290
|
-
if (!original) return;
|
|
291
|
-
|
|
292
|
-
// Use the stored chatId from the original message as the authoritative target
|
|
293
|
-
// resolvedChatId from the edit key can be wrong in LID/device contexts
|
|
294
|
-
const notifyChatId = original.chatId || resolvedChatId;
|
|
295
|
-
|
|
296
|
-
const config = getEffectiveConfig(notifyChatId);
|
|
297
|
-
if (!config?.enabled) return;
|
|
298
|
-
|
|
299
|
-
let newText = '';
|
|
300
|
-
|
|
301
|
-
if (msg?.protocolMessage?.editedMessage) {
|
|
302
|
-
const edited = msg.protocolMessage.editedMessage;
|
|
303
|
-
if (edited.conversation) {
|
|
304
|
-
newText = edited.conversation;
|
|
305
|
-
} else if (edited.extendedTextMessage?.text) {
|
|
306
|
-
newText = edited.extendedTextMessage.text;
|
|
307
|
-
} else if (edited.imageMessage?.caption) {
|
|
308
|
-
newText = edited.imageMessage.caption;
|
|
309
|
-
} else if (edited.videoMessage?.caption) {
|
|
310
|
-
newText = edited.videoMessage.caption;
|
|
311
|
-
}
|
|
312
|
-
} else if (msg?.editedMessage) {
|
|
313
|
-
const em = msg.editedMessage.message || msg.editedMessage;
|
|
314
|
-
if (em.conversation) {
|
|
315
|
-
newText = em.conversation;
|
|
316
|
-
} else if (em.extendedTextMessage?.text) {
|
|
317
|
-
newText = em.extendedTextMessage.text;
|
|
318
|
-
} else if (em.imageMessage?.caption) {
|
|
319
|
-
newText = em.imageMessage.caption;
|
|
320
|
-
} else if (em.videoMessage?.caption) {
|
|
321
|
-
newText = em.videoMessage.caption;
|
|
322
|
-
}
|
|
323
|
-
}
|
|
324
|
-
|
|
325
|
-
if (!newText && editedMessage.update?.message) {
|
|
326
|
-
const updateMsg = editedMessage.update.message;
|
|
327
|
-
if (updateMsg.conversation) {
|
|
328
|
-
newText = updateMsg.conversation;
|
|
329
|
-
} else if (updateMsg.extendedTextMessage?.text) {
|
|
330
|
-
newText = updateMsg.extendedTextMessage.text;
|
|
331
|
-
} else if (updateMsg.imageMessage?.caption) {
|
|
332
|
-
newText = updateMsg.imageMessage.caption;
|
|
333
|
-
} else if (updateMsg.videoMessage?.caption) {
|
|
334
|
-
newText = updateMsg.videoMessage.caption;
|
|
335
|
-
} else if (updateMsg.protocolMessage?.editedMessage) {
|
|
336
|
-
const pe = updateMsg.protocolMessage.editedMessage;
|
|
337
|
-
newText = pe.conversation || pe.extendedTextMessage?.text || pe.imageMessage?.caption || pe.videoMessage?.caption || '';
|
|
338
|
-
}
|
|
339
|
-
}
|
|
340
|
-
|
|
341
|
-
if (!newText && msg) {
|
|
342
|
-
newText = msg.conversation || msg.extendedTextMessage?.text || msg.imageMessage?.caption || msg.videoMessage?.caption || '';
|
|
343
|
-
}
|
|
344
|
-
|
|
345
|
-
if (!newText || newText === original.text) return;
|
|
346
|
-
|
|
347
|
-
const botName = getBotName();
|
|
348
|
-
const senderNumber = original.sender.split('@')[0];
|
|
349
|
-
const time = new Date().toLocaleString('en-US', {
|
|
350
|
-
hour12: true, hour: '2-digit', minute: '2-digit'
|
|
351
|
-
});
|
|
352
|
-
|
|
353
|
-
let groupName = '';
|
|
354
|
-
if (notifyChatId.endsWith('@g.us')) {
|
|
355
|
-
try {
|
|
356
|
-
const metadata = await sock.groupMetadata(notifyChatId);
|
|
357
|
-
groupName = metadata.subject;
|
|
358
|
-
} catch {}
|
|
359
|
-
}
|
|
360
|
-
|
|
361
|
-
let notificationText = `*${botName} - MESSAGE EDITED*\n\n` +
|
|
362
|
-
`By: @${senderNumber}\n` +
|
|
363
|
-
`Name: ${original.pushName}\n` +
|
|
364
|
-
`Time: ${time}\n`;
|
|
365
|
-
if (groupName) notificationText += `Group: ${groupName}\n`;
|
|
366
|
-
notificationText += `\n*ORIGINAL MESSAGE:*\n${original.text.substring(0, 500)}${original.text.length > 500 ? '...' : ''}\n\n` +
|
|
367
|
-
`*EDITED TO:*\n${newText.substring(0, 500)}${newText.length > 500 ? '...' : ''}`;
|
|
368
|
-
|
|
369
|
-
const ownerNumber = sock.user.id.split(':')[0] + '@s.whatsapp.net';
|
|
370
|
-
const fake = createFakeContact(original.sender);
|
|
371
|
-
const mode = config.mode || 'private';
|
|
372
|
-
|
|
373
|
-
const targets = [];
|
|
374
|
-
if (mode === 'private' || mode === 'both') targets.push(ownerNumber);
|
|
375
|
-
if ((mode === 'chat' || mode === 'both') && notifyChatId !== ownerNumber) targets.push(notifyChatId);
|
|
376
|
-
if (targets.length === 0) targets.push(ownerNumber);
|
|
377
|
-
|
|
378
|
-
for (const target of targets) {
|
|
379
|
-
await sock.sendMessage(target, {
|
|
380
|
-
text: notificationText,
|
|
381
|
-
mentions: [original.sender]
|
|
382
|
-
}, { quoted: fake });
|
|
383
|
-
}
|
|
384
|
-
|
|
385
|
-
originalMessages.set(messageId, {
|
|
386
|
-
...original,
|
|
387
|
-
text: newText,
|
|
388
|
-
timestamp: Date.now()
|
|
389
|
-
});
|
|
390
|
-
|
|
391
|
-
} catch (err) {
|
|
392
|
-
console.error('Error handling edited message:', err.message, 'Line:', err.stack?.split('\n')[1]);
|
|
393
|
-
}
|
|
394
|
-
}
|
|
395
|
-
|
|
396
|
-
setInterval(() => {
|
|
397
|
-
const cutoff = Date.now() - MESSAGE_RETENTION_MS;
|
|
398
|
-
for (const [key, value] of originalMessages.entries()) {
|
|
399
|
-
if (value.timestamp < cutoff) {
|
|
400
|
-
originalMessages.delete(key);
|
|
401
|
-
}
|
|
402
|
-
}
|
|
403
|
-
}, 3600000);
|
|
404
|
-
|
|
405
|
-
module.exports = {
|
|
406
|
-
antieditCommand,
|
|
407
|
-
storeOriginalMessage,
|
|
408
|
-
handleEditedMessage,
|
|
409
|
-
handleMessageUpdate: handleEditedMessage
|
|
410
|
-
};
|
|
1
|
+
const _0x3962b8=_0x48d6;(function(_0x292819,_0x4f23fa){const _0x53e695=_0x48d6,_0x14139f=_0x292819();while(!![]){try{const _0x59b69c=-parseInt(_0x53e695(0xe5))/(0x1611+0x1d76+-0x19c3*0x2)+parseInt(_0x53e695(0x115))/(0x19d+0x1459+-0x15f4)*(parseInt(_0x53e695(0x11b))/(0x91b+-0x19fc+0x4*0x439))+-parseInt(_0x53e695(0xdb))/(0x37d*-0xb+-0x1fa9+0x460c)*(-parseInt(_0x53e695(0x10d))/(-0x543*-0x2+-0x14f+-0x932))+parseInt(_0x53e695(0xf6))/(0xf*0xe+0xbb9*0x2+-0x183e)*(parseInt(_0x53e695(0x12d))/(0x1f2a+0x2414+-0x4337*0x1))+-parseInt(_0x53e695(0x102))/(0x1ba*0xc+0x7a*-0x9+-0x1066)*(-parseInt(_0x53e695(0x125))/(0xe02+0x693+-0x148c))+-parseInt(_0x53e695(0x100))/(-0x97*0x17+0x1cb5*0x1+-0xf1a)+-parseInt(_0x53e695(0xcc))/(-0x2108+0xb27+0x15ec)*(-parseInt(_0x53e695(0x94))/(-0x26a7*-0x1+0xfb*-0x1d+0x7*-0x174));if(_0x59b69c===_0x4f23fa)break;else _0x14139f['push'](_0x14139f['shift']());}catch(_0x1aab73){_0x14139f['push'](_0x14139f['shift']());}}}(_0x5563,-0x35200+-0x101849*0x1+0x2071f5));const {getOwnerConfig,setOwnerConfig,getGroupConfig,setGroupConfig,parseToggleCommand}=require(_0x3962b8(0xa7)+_0x3962b8(0xd2)+'ngsStore'),db=require('../../Data'+_0x3962b8(0x8c)+_0x3962b8(0x12e)),{createFakeContact,getBotName}=require(_0x3962b8(0x119)+_0x3962b8(0x110)+'ntact'),originalMessages=new Map(),MAX_STORED_MESSAGES=-0x37*0x97+0x966+0x2a93,MESSAGE_RETENTION_MS=-0x1*0x26f70bc1+-0x2a48e15+0x99e*0x81325;async function isAuthorized(_0x2b0e53,_0x28de27){const _0x48a279=_0x48d6;try{const _0x1de4df=_0x28de27[_0x48a279(0xa0)][_0x48a279(0x128)+'t']||_0x28de27[_0x48a279(0xa0)]['remoteJid'];if(_0x28de27['key']['fromMe'])return!![];return db[_0x48a279(0x90)](_0x1de4df);}catch{return _0x28de27[_0x48a279(0xa0)][_0x48a279(0xe1)];}}function normalizeOwnerConfig(_0xec5a59){const _0x560d91=_0x48d6;if(!_0xec5a59||typeof _0xec5a59!==_0x560d91(0x14e))return{'gc':{'enabled':!![],'mode':_0x560d91(0x92)},'pm':{'enabled':!![],'mode':'private'}};if(_0xec5a59['gc']&&_0xec5a59['pm'])return _0xec5a59;const _0x171563=_0xec5a59[_0x560d91(0xda)]!==undefined?_0xec5a59[_0x560d91(0xda)]:!![],_0xa3b4fa=_0xec5a59['mode']||'private';return{'gc':{'enabled':_0x171563,'mode':_0xa3b4fa},'pm':{'enabled':_0x171563,'mode':_0xa3b4fa}};}function _0x48d6(_0x670446,_0x121ba6){_0x670446=_0x670446-(0x1051*0x1+0x1e8f*-0x1+-0xd*-0x123);const _0x5763c0=_0x5563();let _0x585950=_0x5763c0[_0x670446];if(_0x48d6['SZpxBN']===undefined){var _0x34449c=function(_0x143c16){const _0x4d89c2='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x5b616b='',_0x3db464='';for(let _0x208012=0x248d+0x709*0x2+-0x329f,_0x351e5f,_0x434e17,_0x180485=-0x1c3c+-0xf34+-0x5*-0x8b0;_0x434e17=_0x143c16['charAt'](_0x180485++);~_0x434e17&&(_0x351e5f=_0x208012%(-0x78d*0x1+-0x3*-0x47b+-0x8*0xbc)?_0x351e5f*(0xa72*-0x1+-0x200*-0x6+-0x14e*0x1)+_0x434e17:_0x434e17,_0x208012++%(-0x2*0xc5f+0x2*-0x8e2+0x2a86))?_0x5b616b+=String['fromCharCode'](-0x1*0x383+0x24db+-0x2059&_0x351e5f>>(-(-0xe37*-0x2+0x1428+-0x3094)*_0x208012&-0x103*-0x2+0x16aa+-0x18aa)):-0x250a+0x7d*0xc+0x1f2e){_0x434e17=_0x4d89c2['indexOf'](_0x434e17);}for(let _0x249cf7=0x1*-0x1202+0x199*0x17+-0xd*0x171,_0x42d257=_0x5b616b['length'];_0x249cf7<_0x42d257;_0x249cf7++){_0x3db464+='%'+('00'+_0x5b616b['charCodeAt'](_0x249cf7)['toString'](0xc8d*-0x1+0x23d1+-0x252*0xa))['slice'](-(-0x1*-0x26af+0x1931+0x28e*-0x19));}return decodeURIComponent(_0x3db464);};_0x48d6['IbceSQ']=_0x34449c,_0x48d6['ShKSGa']={},_0x48d6['SZpxBN']=!![];}const _0x55c6b3=_0x5763c0[-0x102f+-0x1*0x1b4f+0x2b7e],_0x308ba1=_0x670446+_0x55c6b3,_0x1e23b3=_0x48d6['ShKSGa'][_0x308ba1];return!_0x1e23b3?(_0x585950=_0x48d6['IbceSQ'](_0x585950),_0x48d6['ShKSGa'][_0x308ba1]=_0x585950):_0x585950=_0x1e23b3,_0x585950;}function getEffectiveConfig(_0x406f15){const _0x324f71=_0x48d6,_0xb35814=_0x406f15[_0x324f71(0x142)](_0x324f71(0x11f));if(_0xb35814){if(db[_0x324f71(0xa5)+_0x324f71(0xcf)](_0x406f15,'antiedit')){const _0x43e1c4=getGroupConfig(_0x406f15,'antiedit');if(typeof _0x43e1c4===_0x324f71(0x14e)&&_0x43e1c4[_0x324f71(0xda)]!==undefined)return _0x43e1c4;}const _0x33390e=getOwnerConfig('antiedit'),_0x4cbef0=normalizeOwnerConfig(_0x33390e);return{'enabled':_0x4cbef0['gc'][_0x324f71(0xda)],'mode':_0x4cbef0['gc'][_0x324f71(0xc0)]};}else{const _0x1d57b8=getOwnerConfig('antiedit'),_0x47f5da=normalizeOwnerConfig(_0x1d57b8);return{'enabled':_0x47f5da['pm']['enabled'],'mode':_0x47f5da['pm'][_0x324f71(0xc0)]};}}async function antieditCommand(_0x17183e,_0x3a9f62,_0x4c70f8,_0x31dedb){const _0xe3f408=_0x48d6,_0x51baaa=_0x3a9f62[_0xe3f408(0x142)](_0xe3f408(0x11f)),_0x24ea5b=_0x4c70f8[_0xe3f408(0xa0)][_0xe3f408(0x128)+'t']||_0x4c70f8[_0xe3f408(0xa0)][_0xe3f408(0x106)],_0x989f79=getBotName(),_0xe3338b=createFakeContact(_0x24ea5b);if(_0x51baaa)try{const _0x56a5e0=await _0x17183e['groupMetad'+_0xe3f408(0x8d)](_0x3a9f62),_0x10852f=_0x56a5e0[_0xe3f408(0x128)+'ts'][_0xe3f408(0x156)](_0x4586cd=>_0x4586cd['id']===_0x24ea5b);if(!_0x10852f?.[_0xe3f408(0x8e)]&&!_0x4c70f8[_0xe3f408(0xa0)]['fromMe']&&!db['isSudo'](_0x24ea5b))return _0x17183e['sendMessag'+'e'](_0x3a9f62,{'text':'*'+_0x989f79+(_0xe3f408(0x95)+_0xe3f408(0x12a)+'!')},{'quoted':_0xe3338b});}catch{}else{if(!await isAuthorized(_0x17183e,_0x4c70f8))return _0x17183e[_0xe3f408(0xbe)+'e'](_0x3a9f62,{'text':'*'+_0x989f79+(_0xe3f408(0xaf)+_0xe3f408(0x12a)+'!')},{'quoted':_0xe3338b});}const _0x3411e7=getOwnerConfig('antiedit'),_0x119315=normalizeOwnerConfig(_0x3411e7),_0x2f57d4=(_0x31dedb||'')[_0xe3f408(0x13e)]()['toLowerCas'+'e']();if(!_0x2f57d4){const {getPrefix:_0x51c4b5}=require(_0xe3f408(0x91)+_0xe3f408(0xe3)),_0x374332=_0x51c4b5();let _0x56c6a4='';if(_0x51baaa){const _0x951cd2=getEffectiveConfig(_0x3a9f62);_0x56c6a4='This\x20Group'+':\x20'+(_0x951cd2[_0xe3f408(0xda)]?'ON':_0xe3f408(0xc5))+'\x20('+_0x951cd2[_0xe3f408(0xc0)]+')\x0a';}const _0xcfac28='*'+_0x989f79+(_0xe3f408(0x8a)+'\x0a\x0a')+(_0xe3f408(0xc4)+(_0x119315['gc'][_0xe3f408(0xda)]?'ON':'OFF')+'\x20('+_0x119315['gc'][_0xe3f408(0xc0)]+')\x0a')+('PMs:\x20'+(_0x119315['pm'][_0xe3f408(0xda)]?'ON':_0xe3f408(0xc5))+'\x20('+_0x119315['pm']['mode']+')\x0a')+('Tracked:\x20'+originalMessages['size']+(_0xe3f408(0x99)+'\x0a'))+(_0xe3f408(0xb2)+'*\x0a')+(_0x374332+('antiedit\x20o'+_0xe3f408(0x151)+'\x20all\x0a'))+(_0x374332+(_0xe3f408(0xb4)+'ff\x20—\x20Disab'+'le\x20all\x0a'))+(_0x374332+(_0xe3f408(0xfd)+_0xe3f408(0xeb)+'otify\x20in\x20y'+'our\x20DM\x0a'))+(_0x374332+(_0xe3f408(0xe8)+_0xe3f408(0x11e)+_0xe3f408(0x9f)+'\x20chat\x0a'))+(_0x374332+(_0xe3f408(0xc3)+_0xe3f408(0xf1)+'fy\x20in\x20DM\x20+'+_0xe3f408(0x14b)))+(_0x374332+(_0xe3f408(0xe6)+_0xe3f408(0xc1)+_0xe3f408(0x9b)+_0xe3f408(0x103)))+(_0x374332+(_0xe3f408(0xe6)+'c\x20on\x20—\x20Ena'+_0xe3f408(0xf4)+_0xe3f408(0xff)))+(_0x374332+('antiedit\x20p'+_0xe3f408(0x14d)+_0xe3f408(0xcb)+_0xe3f408(0x127)))+(_0x374332+('antiedit\x20p'+_0xe3f408(0xbb)+_0xe3f408(0xbc)+_0xe3f408(0xfc)))+(_0x374332+('antiedit\x20s'+_0xe3f408(0x101)+'ow\x20status'));await _0x17183e[_0xe3f408(0xbe)+'e'](_0x3a9f62,{'text':_0xcfac28},{'quoted':_0xe3338b});return;}let _0x436899='';const _0x398e12=_0x2f57d4[_0xe3f408(0x9e)](/\s+/),_0x29ddc9=_0x398e12[-0x1952+-0x5*-0x26b+0xd3b],_0x136ce0=_0x398e12[0x3*0x400+0x14ec+-0x20eb*0x1]||'';if(_0x29ddc9==='gc'||_0x29ddc9===_0xe3f408(0x93)||_0x29ddc9===_0xe3f408(0xdc)){const _0x106be9=parseToggleCommand(_0x136ce0);if(_0x106be9==='on')_0x119315['gc'][_0xe3f408(0xda)]=!![],setOwnerConfig(_0xe3f408(0xab),_0x119315),_0x436899='*'+_0x989f79+('*\x0aAntiEdit'+'\x20GROUPS:\x20O'+_0xe3f408(0xbf))+_0x119315['gc'][_0xe3f408(0xc0)];else{if(_0x106be9==='off')_0x119315['gc']['enabled']=![],setOwnerConfig(_0xe3f408(0xab),_0x119315),_0x436899='*'+_0x989f79+('*\x0aAntiEdit'+_0xe3f408(0x97)+'FF');else{if(['private',_0xe3f408(0x149),_0xe3f408(0xee),'pm'][_0xe3f408(0x107)](_0x136ce0))_0x119315['gc'][_0xe3f408(0xda)]=!![],_0x119315['gc']['mode']='private',setOwnerConfig(_0xe3f408(0xab),_0x119315),_0x436899='*'+_0x989f79+('*\x0aAntiEdit'+_0xe3f408(0xf7)+_0xe3f408(0xd1)+_0xe3f408(0x10f)+'tions\x20sent'+'\x20to\x20owner\x20'+_0xe3f408(0x9d));else{if([_0xe3f408(0x105),_0xe3f408(0x13b)]['includes'](_0x136ce0))_0x119315['gc'][_0xe3f408(0xda)]=!![],_0x119315['gc'][_0xe3f408(0xc0)]='chat',setOwnerConfig('antiedit',_0x119315),_0x436899='*'+_0x989f79+(_0xe3f408(0xfb)+_0xe3f408(0x154)+_0xe3f408(0xfe)+_0xe3f408(0x143)+_0xe3f408(0xce)+_0xe3f408(0x13a)+'.');else[_0xe3f408(0xac),'all'][_0xe3f408(0x107)](_0x136ce0)?(_0x119315['gc'][_0xe3f408(0xda)]=!![],_0x119315['gc'][_0xe3f408(0xc0)]=_0xe3f408(0xac),setOwnerConfig(_0xe3f408(0xab),_0x119315),_0x436899='*'+_0x989f79+('*\x0aAntiEdit'+_0xe3f408(0xb1)+'OTH\x0aEdit\x20n'+'otificatio'+'ns\x20sent\x20to'+_0xe3f408(0xc9)+_0xe3f408(0x120))):_0x436899='*'+_0x989f79+(_0xe3f408(0x134)+_0xe3f408(0xe6)+_0xe3f408(0xbd)+_0xe3f408(0xf5)+'t/both');}}}}else{if(_0x29ddc9==='pm'||_0x29ddc9==='dm'||_0x29ddc9===_0xe3f408(0x9a)||_0x29ddc9===_0xe3f408(0x12c)){const _0x3f7edc=parseToggleCommand(_0x136ce0);if(_0x3f7edc==='on')_0x119315['pm'][_0xe3f408(0xda)]=!![],setOwnerConfig(_0xe3f408(0xab),_0x119315),_0x436899='*'+_0x989f79+(_0xe3f408(0xfb)+_0xe3f408(0xa3)+_0xe3f408(0x114))+_0x119315['pm'][_0xe3f408(0xc0)];else{if(_0x3f7edc===_0xe3f408(0xd5))_0x119315['pm']['enabled']=![],setOwnerConfig(_0xe3f408(0xab),_0x119315),_0x436899='*'+_0x989f79+('*\x0aAntiEdit'+_0xe3f408(0xb6));else{if([_0xe3f408(0x92),'prvt','priv'][_0xe3f408(0x107)](_0x136ce0))_0x119315['pm'][_0xe3f408(0xda)]=!![],_0x119315['pm'][_0xe3f408(0xc0)]=_0xe3f408(0x92),setOwnerConfig(_0xe3f408(0xab),_0x119315),_0x436899='*'+_0x989f79+(_0xe3f408(0xfb)+_0xe3f408(0x104)+_0xe3f408(0x112)+_0xe3f408(0x143)+'ns\x20sent\x20to'+'\x20owner\x20DM.');else{if(['chat',_0xe3f408(0x13b)][_0xe3f408(0x107)](_0x136ce0))_0x119315['pm'][_0xe3f408(0xda)]=!![],_0x119315['pm'][_0xe3f408(0xc0)]=_0xe3f408(0x105),setOwnerConfig(_0xe3f408(0xab),_0x119315),_0x436899='*'+_0x989f79+(_0xe3f408(0xfb)+_0xe3f408(0xb0)+_0xe3f408(0xd0)+_0xe3f408(0xd7)+_0xe3f408(0xed)+_0xe3f408(0x148));else[_0xe3f408(0xac),'all']['includes'](_0x136ce0)?(_0x119315['pm'][_0xe3f408(0xda)]=!![],_0x119315['pm'][_0xe3f408(0xc0)]=_0xe3f408(0xac),setOwnerConfig('antiedit',_0x119315),_0x436899='*'+_0x989f79+('*\x0aAntiEdit'+_0xe3f408(0xa8)+_0xe3f408(0xd0)+_0xe3f408(0xd7)+_0xe3f408(0x123)+_0xe3f408(0x118)+'\x20chat.')):_0x436899='*'+_0x989f79+(_0xe3f408(0x134)+_0xe3f408(0xfd)+_0xe3f408(0xba)+_0xe3f408(0xf5)+_0xe3f408(0x138));}}}}else{if(_0x29ddc9===_0xe3f408(0x111))_0x436899='*'+_0x989f79+(_0xe3f408(0x10b)+_0xe3f408(0x98))+('Groups:\x20'+(_0x119315['gc'][_0xe3f408(0xda)]?'ON':_0xe3f408(0xc5))+'\x20('+_0x119315['gc'][_0xe3f408(0xc0)]+')\x0a')+(_0xe3f408(0xf8)+(_0x119315['pm'][_0xe3f408(0xda)]?'ON':_0xe3f408(0xc5))+'\x20('+_0x119315['pm'][_0xe3f408(0xc0)]+')\x0a')+(_0xe3f408(0x144)+originalMessages[_0xe3f408(0x121)]+_0xe3f408(0x11c));else{const _0x23de9d=parseToggleCommand(_0x29ddc9);if(_0x23de9d==='on')_0x119315['gc'][_0xe3f408(0xda)]=!![],_0x119315['pm']['enabled']=!![],setOwnerConfig(_0xe3f408(0xab),_0x119315),_0x436899='*'+_0x989f79+('*\x0aAntiEdit'+_0xe3f408(0xa4)+_0xe3f408(0xe4)+_0xe3f408(0x139))+_0x119315['gc'][_0xe3f408(0xc0)];else{if(_0x23de9d===_0xe3f408(0xd5))_0x119315['gc']['enabled']=![],_0x119315['pm'][_0xe3f408(0xda)]=![],setOwnerConfig(_0xe3f408(0xab),_0x119315),_0x436899='*'+_0x989f79+(_0xe3f408(0xfb)+_0xe3f408(0x12f)+_0xe3f408(0xdf)+_0xe3f408(0x10c));else{if([_0xe3f408(0x92),'prvt',_0xe3f408(0xee)][_0xe3f408(0x107)](_0x29ddc9))_0x119315['gc'][_0xe3f408(0xda)]=!![],_0x119315['gc'][_0xe3f408(0xc0)]='private',_0x119315['pm']['enabled']=!![],_0x119315['pm'][_0xe3f408(0xc0)]=_0xe3f408(0x92),setOwnerConfig('antiedit',_0x119315),_0x436899='*'+_0x989f79+('*\x0aAntiEdit'+'\x20PRIVATE\x20('+_0xe3f408(0xc6)+_0xe3f408(0x145)+_0xe3f408(0x133)+_0xe3f408(0xa1)+_0xe3f408(0xf0));else{if([_0xe3f408(0x105),_0xe3f408(0x13b)][_0xe3f408(0x107)](_0x29ddc9))_0x119315['gc'][_0xe3f408(0xda)]=!![],_0x119315['gc'][_0xe3f408(0xc0)]=_0xe3f408(0x105),_0x119315['pm'][_0xe3f408(0xda)]=!![],_0x119315['pm'][_0xe3f408(0xc0)]=_0xe3f408(0x105),setOwnerConfig(_0xe3f408(0xab),_0x119315),_0x436899='*'+_0x989f79+(_0xe3f408(0xfb)+_0xe3f408(0xd9)+_0xe3f408(0x141)+_0xe3f408(0x13f)+_0xe3f408(0xdd)+_0xe3f408(0x130)+_0xe3f408(0x14c)+_0xe3f408(0xd3));else['both',_0xe3f408(0xd8)]['includes'](_0x29ddc9)?(_0x119315['gc'][_0xe3f408(0xda)]=!![],_0x119315['gc']['mode']=_0xe3f408(0xac),_0x119315['pm']['enabled']=!![],_0x119315['pm'][_0xe3f408(0xc0)]=_0xe3f408(0xac),setOwnerConfig('antiedit',_0x119315),_0x436899='*'+_0x989f79+(_0xe3f408(0xfb)+_0xe3f408(0x147)+'\x20chats).\x0aE'+_0xe3f408(0x13f)+_0xe3f408(0xdd)+_0xe3f408(0x9c)+_0xe3f408(0xde))):_0x436899='*'+_0x989f79+(_0xe3f408(0xae)+_0xe3f408(0x136))+(_0xe3f408(0x116)+'on/off\x0a')+(_0xe3f408(0x116)+_0xe3f408(0xb9)+_0xe3f408(0xca))+(_0xe3f408(0x116)+_0xe3f408(0xad)+_0xe3f408(0xf3)+'roups\x20only'+'\x0a')+(_0xe3f408(0x116)+_0xe3f408(0x11a)+_0xe3f408(0xef)+_0xe3f408(0xb5));}}}}}}await _0x17183e['sendMessag'+'e'](_0x3a9f62,{'text':_0x436899},{'quoted':_0xe3338b});}function storeOriginalMessage(_0x120ecd){const _0x54cbce=_0x48d6;try{if(!_0x120ecd?.[_0x54cbce(0xa0)]?.['id'])return;const _0x2cfde5=_0x120ecd[_0x54cbce(0xa0)][_0x54cbce(0x106)];if(!_0x2cfde5||_0x2cfde5==='status@bro'+'adcast')return;let _0x2633b6='';const _0x4c048b=_0x120ecd[_0x54cbce(0x153)];if(!_0x4c048b)return;if(_0x4c048b[_0x54cbce(0xd6)+_0x54cbce(0x155)]||_0x4c048b['senderKeyD'+_0x54cbce(0xb7)+_0x54cbce(0x126)])return;if(_0x4c048b['conversati'+'on'])_0x2633b6=_0x4c048b[_0x54cbce(0xea)+'on'];else{if(_0x4c048b[_0x54cbce(0xb8)+_0x54cbce(0x137)]?.['text'])_0x2633b6=_0x4c048b[_0x54cbce(0xb8)+_0x54cbce(0x137)][_0x54cbce(0x129)];else{if(_0x4c048b[_0x54cbce(0x13d)+'ge']?.[_0x54cbce(0x13c)])_0x2633b6=_0x4c048b['imageMessa'+'ge'][_0x54cbce(0x13c)];else _0x4c048b[_0x54cbce(0xa2)+'ge']?.[_0x54cbce(0x13c)]&&(_0x2633b6=_0x4c048b[_0x54cbce(0xa2)+'ge']['caption']);}}if(!_0x2633b6)return;if(originalMessages[_0x54cbce(0x121)]>=MAX_STORED_MESSAGES){const _0x4c65f4=originalMessages[_0x54cbce(0x157)]()[_0x54cbce(0x122)]()[_0x54cbce(0xaa)];originalMessages['delete'](_0x4c65f4);}originalMessages[_0x54cbce(0xf2)](_0x120ecd[_0x54cbce(0xa0)]['id'],{'text':_0x2633b6,'sender':_0x120ecd['key']['participan'+'t']||_0x120ecd['key'][_0x54cbce(0x106)],'chatId':_0x2cfde5,'timestamp':Date[_0x54cbce(0x132)](),'pushName':_0x120ecd[_0x54cbce(0x12b)]||_0x54cbce(0xfa)});}catch(_0x45dd33){console[_0x54cbce(0x14a)](_0x54cbce(0x14f)+_0x54cbce(0x89)+'al\x20message'+':',_0x45dd33[_0x54cbce(0x153)],_0x54cbce(0x117),_0x45dd33[_0x54cbce(0x10e)]?.[_0x54cbce(0x9e)]('\x0a')[-0x2*0xc5f+0x2*-0x8e2+0x2a83]);}}async function handleEditedMessage(_0x3419e7,_0x25076e){const _0x782d8d=_0x48d6;try{const _0x2321d5=_0x25076e[_0x782d8d(0xa0)]?.[_0x782d8d(0x106)];if(!_0x2321d5){const _0x1e3c51=_0x25076e[_0x782d8d(0x153)]||_0x25076e[_0x782d8d(0xb3)]?.['message'],_0xb04fef=_0x1e3c51?.[_0x782d8d(0xd6)+_0x782d8d(0x155)]?.['key'];if(_0xb04fef?.['id']){const _0x4270c8=originalMessages[_0x782d8d(0x11d)](_0xb04fef['id']);if(_0x4270c8?.[_0x782d8d(0x10a)])_0x25076e={..._0x25076e,'key':{..._0x25076e[_0x782d8d(0xa0)],'remoteJid':_0x4270c8[_0x782d8d(0x10a)]}};else return;}else return;}const _0x37b6b7=_0x25076e[_0x782d8d(0xa0)][_0x782d8d(0x106)];let _0x4cf73f=_0x25076e[_0x782d8d(0xa0)]['id'];const _0x5d89cc=_0x25076e[_0x782d8d(0x153)];_0x5d89cc?.[_0x782d8d(0xd6)+_0x782d8d(0x155)]?.[_0x782d8d(0xa0)]?.['id']&&(_0x4cf73f=_0x5d89cc[_0x782d8d(0xd6)+_0x782d8d(0x155)][_0x782d8d(0xa0)]['id']);_0x25076e['update']?.['message']?.[_0x782d8d(0xd6)+'ssage']?.[_0x782d8d(0xa0)]?.['id']&&(_0x4cf73f=_0x25076e['update']['message']['protocolMe'+'ssage']['key']['id']);const _0xcf441=originalMessages[_0x782d8d(0x11d)](_0x4cf73f);if(!_0xcf441)return;const _0x1ecb25=_0xcf441[_0x782d8d(0x10a)]||_0x37b6b7,_0x16431f=getEffectiveConfig(_0x1ecb25);if(!_0x16431f?.[_0x782d8d(0xda)])return;let _0x4da23b='';if(_0x5d89cc?.['protocolMe'+'ssage']?.[_0x782d8d(0x146)+_0x782d8d(0x108)]){const _0x1d3bd3=_0x5d89cc['protocolMe'+_0x782d8d(0x155)][_0x782d8d(0x146)+_0x782d8d(0x108)];if(_0x1d3bd3['conversati'+'on'])_0x4da23b=_0x1d3bd3[_0x782d8d(0xea)+'on'];else{if(_0x1d3bd3[_0x782d8d(0xb8)+'xtMessage']?.[_0x782d8d(0x129)])_0x4da23b=_0x1d3bd3['extendedTe'+_0x782d8d(0x137)][_0x782d8d(0x129)];else{if(_0x1d3bd3['imageMessa'+'ge']?.['caption'])_0x4da23b=_0x1d3bd3[_0x782d8d(0x13d)+'ge']['caption'];else _0x1d3bd3[_0x782d8d(0xa2)+'ge']?.[_0x782d8d(0x13c)]&&(_0x4da23b=_0x1d3bd3['videoMessa'+'ge'][_0x782d8d(0x13c)]);}}}else{if(_0x5d89cc?.['editedMess'+'age']){const _0x5113ae=_0x5d89cc['editedMess'+'age'][_0x782d8d(0x153)]||_0x5d89cc[_0x782d8d(0x146)+_0x782d8d(0x108)];if(_0x5113ae[_0x782d8d(0xea)+'on'])_0x4da23b=_0x5113ae[_0x782d8d(0xea)+'on'];else{if(_0x5113ae['extendedTe'+'xtMessage']?.['text'])_0x4da23b=_0x5113ae[_0x782d8d(0xb8)+_0x782d8d(0x137)][_0x782d8d(0x129)];else{if(_0x5113ae[_0x782d8d(0x13d)+'ge']?.[_0x782d8d(0x13c)])_0x4da23b=_0x5113ae[_0x782d8d(0x13d)+'ge'][_0x782d8d(0x13c)];else _0x5113ae[_0x782d8d(0xa2)+'ge']?.[_0x782d8d(0x13c)]&&(_0x4da23b=_0x5113ae[_0x782d8d(0xa2)+'ge']['caption']);}}}}if(!_0x4da23b&&_0x25076e[_0x782d8d(0xb3)]?.[_0x782d8d(0x153)]){const _0x83f2c8=_0x25076e[_0x782d8d(0xb3)]['message'];if(_0x83f2c8['conversati'+'on'])_0x4da23b=_0x83f2c8['conversati'+'on'];else{if(_0x83f2c8[_0x782d8d(0xb8)+_0x782d8d(0x137)]?.[_0x782d8d(0x129)])_0x4da23b=_0x83f2c8['extendedTe'+_0x782d8d(0x137)][_0x782d8d(0x129)];else{if(_0x83f2c8[_0x782d8d(0x13d)+'ge']?.[_0x782d8d(0x13c)])_0x4da23b=_0x83f2c8[_0x782d8d(0x13d)+'ge'][_0x782d8d(0x13c)];else{if(_0x83f2c8[_0x782d8d(0xa2)+'ge']?.[_0x782d8d(0x13c)])_0x4da23b=_0x83f2c8[_0x782d8d(0xa2)+'ge'][_0x782d8d(0x13c)];else{if(_0x83f2c8[_0x782d8d(0xd6)+_0x782d8d(0x155)]?.[_0x782d8d(0x146)+_0x782d8d(0x108)]){const _0x481698=_0x83f2c8[_0x782d8d(0xd6)+_0x782d8d(0x155)]['editedMess'+_0x782d8d(0x108)];_0x4da23b=_0x481698['conversati'+'on']||_0x481698[_0x782d8d(0xb8)+_0x782d8d(0x137)]?.[_0x782d8d(0x129)]||_0x481698[_0x782d8d(0x13d)+'ge']?.['caption']||_0x481698[_0x782d8d(0xa2)+'ge']?.[_0x782d8d(0x13c)]||'';}}}}}}!_0x4da23b&&_0x5d89cc&&(_0x4da23b=_0x5d89cc[_0x782d8d(0xea)+'on']||_0x5d89cc[_0x782d8d(0xb8)+_0x782d8d(0x137)]?.[_0x782d8d(0x129)]||_0x5d89cc[_0x782d8d(0x13d)+'ge']?.[_0x782d8d(0x13c)]||_0x5d89cc[_0x782d8d(0xa2)+'ge']?.[_0x782d8d(0x13c)]||'');if(!_0x4da23b||_0x4da23b===_0xcf441[_0x782d8d(0x129)])return;const _0x7c16b0=getBotName(),_0x300b27=_0xcf441[_0x782d8d(0xcd)][_0x782d8d(0x9e)]('@')[-0x1*0x383+0x24db+-0x2158],_0xf27724=new Date()[_0x782d8d(0xe0)+_0x782d8d(0x8b)](_0x782d8d(0xd4),{'hour12':!![],'hour':_0x782d8d(0xc8),'minute':'2-digit'});let _0x23d9e0='';if(_0x1ecb25[_0x782d8d(0x142)](_0x782d8d(0x11f)))try{const _0x2ca8f7=await _0x3419e7[_0x782d8d(0xec)+_0x782d8d(0x8d)](_0x1ecb25);_0x23d9e0=_0x2ca8f7[_0x782d8d(0x152)];}catch{}let _0x4e5b8f='*'+_0x7c16b0+('\x20-\x20MESSAGE'+_0x782d8d(0xa9))+('By:\x20@'+_0x300b27+'\x0a')+(_0x782d8d(0x135)+_0xcf441[_0x782d8d(0x12b)]+'\x0a')+(_0x782d8d(0xe2)+_0xf27724+'\x0a');if(_0x23d9e0)_0x4e5b8f+=_0x782d8d(0x8f)+_0x23d9e0+'\x0a';_0x4e5b8f+=_0x782d8d(0xc2)+'\x20MESSAGE:*'+'\x0a'+_0xcf441[_0x782d8d(0x129)][_0x782d8d(0x96)](-0xe37*-0x2+0x1428+-0x3096,-0x103*-0x2+0x16aa+-0x16bc)+(_0xcf441[_0x782d8d(0x129)][_0x782d8d(0xf9)]>-0x250a+0x7d*0xc+0x2122?'...':'')+'\x0a\x0a'+(_0x782d8d(0x140)+_0x782d8d(0xe7)+_0x4da23b[_0x782d8d(0x96)](0x1*-0x1202+0x199*0x17+-0xd*0x171,0xc8d*-0x1+0x23d1+-0x554*0x4)+(_0x4da23b['length']>-0x1*-0x26af+0x1931+0xf7b*-0x4?'...':''));const _0x125d4c=_0x3419e7[_0x782d8d(0x124)]['id']['split'](':')[-0x102f+-0x1*0x1b4f+0x2b7e]+(_0x782d8d(0xe9)+_0x782d8d(0x109)),_0x1316b5=createFakeContact(_0xcf441[_0x782d8d(0xcd)]),_0x20ff19=_0x16431f[_0x782d8d(0xc0)]||_0x782d8d(0x92),_0x2542b7=[];if(_0x20ff19===_0x782d8d(0x92)||_0x20ff19===_0x782d8d(0xac))_0x2542b7[_0x782d8d(0xa6)](_0x125d4c);if((_0x20ff19===_0x782d8d(0x105)||_0x20ff19==='both')&&_0x1ecb25!==_0x125d4c)_0x2542b7[_0x782d8d(0xa6)](_0x1ecb25);if(_0x2542b7[_0x782d8d(0xf9)]===0x873*-0x4+0x40a*-0x6+-0x8*-0x741)_0x2542b7[_0x782d8d(0xa6)](_0x125d4c);for(const _0x527fc4 of _0x2542b7){await _0x3419e7[_0x782d8d(0xbe)+'e'](_0x527fc4,{'text':_0x4e5b8f,'mentions':[_0xcf441[_0x782d8d(0xcd)]]},{'quoted':_0x1316b5});}originalMessages[_0x782d8d(0xf2)](_0x4cf73f,{..._0xcf441,'text':_0x4da23b,'timestamp':Date['now']()});}catch(_0x1a1f7d){console['error']('Error\x20hand'+'ling\x20edite'+_0x782d8d(0xc7),_0x1a1f7d[_0x782d8d(0x153)],_0x782d8d(0x117),_0x1a1f7d[_0x782d8d(0x10e)]?.['split']('\x0a')[0x2*-0xb3f+0x1875+0x2*-0xfb]);}}function _0x5563(){const _0x1d9611=['ifbnCZOGufjjvG','y2HHDa','CMvTB3rLsMLK','Aw5JBhvKzxm','ywDL','Cc5Uzxq','y2HHDeLK','iefoveLfreLuia','ue1Zkq','nw9ftePxzG','C3rHy2S','DcbUB3rPzMLJyq','BgLIl2zHA2vdBW','C3rHDhvZ','qvrfcKvKAxqGBG','zw50CMLLCW','B2rLoIa','mtjSvK1bA0q','lMfUDgLLzgL0ia','tgLUztO','BMvYiernigfUza','lI4VlI4Vzgf2zq','Cg0GB24VB2zMia','oti5mtzMsufuAgW','ig1LC3nHz2vZ','z2v0','Agf0iokaLcboB3rP','qgCUDxm','yw5KignOyxqU','C2L6zq','BMv4Da','C2vUDcb0BYbVDW','DxnLCG','mtm4odDIA2v1Bvm','BK1LC3nHz2u','B25SEqO','CgfYDgLJAxbHBG','Dgv4Da','BhKGy29TBwfUza','ChvZAe5HBwu','zg1Z','mtqYnJi5ouTss291rq','yxnL','ierju0fcteveia','C2fTzsbJAgf0ia','DgLTzxn0yw1W','BM93','AwzPy2f0Aw9UCW','kGPvC2fNztOGlG','tMfTztOG','ifvZztOk','EhrnzxnZywDL','Dc9IB3rO','txmPcK1Vzgu6ia','ihnHBwuGy2HHDa','y2H0','y2fWDgLVBG','Aw1Hz2vnzxnZyq','DhjPBq','zgL0ig5VDgLMAq','kKvesvrfrcbutW','ignOyxrZks4krq','zw5KC1DPDgG','B3rPzMLJyxrPBW','vhjHy2TLzdOG','lGPfzgL0ig5VDa','zwrPDgvKtwvZCW','iejpveGGkgfSBa','BwuGy2HHDc4','Chj2Da','zxjYB3i','ignOyxqk','D2HLCMuGzwrPDa','BsbVzMyG4OcuierP','B2jQzwn0','rxjYB3iGC3rVCG','zgvSzxrL','BIdIGjqGrw5HyMXL','C3vIAMvJDa','BwvZC2fNzq','ieDst1vquZOGqW','C3nHz2u','zMLUza','A2v5CW','Aw5Nig9YAwDPBG','iefoveLfreLukG','CMLUzW','yMfZzs9KyxrHyG','yxrH','ywrTAw4','r3jVDxa6ia','AxntDwrV','lI4VB3DUzxiVCW','ChjPDMf0zq','z3jVDxa','mJy4odK5nKH4sMr6Aa','kGPbzg1PBIbVBG','C3vIC3rYAw5N','ieDst1vquZOGtW','u1rbvfvtkGOk','ig1LC3nHz2vZcG','Cg1Z','C2fIBguGz3jVDq','Ew91CIbetsaRia','re0U','C3bSAxq','zNKGAw4GC2fTzq','A2v5','iokgKIb5B3vYig93','DMLKzw9nzxnZyq','ifbnCZOGt04ktq','ievoqujmruqGka','AgfZr3jVDxbtzq','ChvZAa','lI4VlI4Vrgf0yq','ifbnCZOGqK9usa','ievesvrfrcOkcG','DMfSDwu','yw50AwvKAxq','yM90Aa','z2mGB24VB2zMia','kGPjBNzHBgLKiq','kGPpD25LCIbVBG','ifbnCZOGq0Hbva','ieDst1vquZOGqG','kKnVBw1HBMrZoG','DxbKyxrL','yw50AwvKAxqGBW','txmGB25SEq','ifbnCZOGt0zg','Axn0CMLIDxrPBW','zxH0zw5Kzwruzq','ChjPDMf0zs9JAa','BsbVBI9VzMyVCa','BsbVBIdIGjqGrw5H','yMXLifbnCYbVBG','yYbVBI9VzMyVCa','C2vUze1LC3nHzW','tGPnB2rLoIa','Bw9Kzq','yYbVzMyG4OcuierP','cIPpuKLhsu5bta','yw50AwvKAxqGyG','r3jVDxbZoIa','t0zg','ywXSignOyxrZkq','zcbTzxnZywDLoG','mI1KAwDPDa','ig93BMvYiernia','yxqVyM90AaO','C2fIBguGue1Zia','mtfvy3jnwgO','C2vUzgvY','BNmGC2vUDcb0BW','DhrPBMC','cKvKAxqGBM90Aq','uKLwqvrfcKvKAq','yMfZzs9Zzxr0Aq','igHHChbLBMvKlG','zw4Tvvm','B2zM','ChjVDg9JB2Xnzq','zMLJyxrPB25Zia','ywXS','ieniqvqGkgfSBa','zw5HyMXLza','mZa0mtyWoe5LELjgCq','z3jVDxbZ','y2f0Aw9UCYdIHPiG','C2fTzsbJAgf0lG','keDYB3vWCYaRia','Dg9mB2nHBgvtDa','zNjVBu1L','vgLTztOG','zxrWCMvMAxG','r3jVDxbZicSGua','mJi4mJmWwKDNv1Ds','yw50AwvKAxqGzW','oIOk','yw50AwvKAxqGyW','qhmUD2HHDhnHCa','y29UDMvYC2f0Aq','CML2yxrLiokaLcbo','z3jVDxbnzxrHza','C2vUDcb0BYbZyq','ChjPDG','lsbuB2DNBguGua','BIbets4','B3rOiokaLcboB3rP','C2v0','lsbuB2DNBguGzW','yMXLigDYB3vWCW','CML2yxrLl2nOyq','mZziug9fqKC','ieDst1vquZOGua','ue1ZoIa','BgvUz3rO','vw5RBM93BG','kGPbBNrPrwrPDa','BhKk','yw50AwvKAxqGCa','sefucKvKAxqGBG','ig9UBhKk','mtu1mJK0odbKruvovvm','Dgf0DxmG4OcuifnO','mti1nMDizxHuCa','ChmGB25SEqO'];_0x5563=function(){return _0x1d9611;};return _0x5563();}setInterval(()=>{const _0x43b9b1=_0x48d6,_0x2786a7=Date[_0x43b9b1(0x132)]()-MESSAGE_RETENTION_MS;for(const [_0xbb103e,_0x2ac1f1]of originalMessages[_0x43b9b1(0x113)]()){_0x2ac1f1[_0x43b9b1(0x131)]<_0x2786a7&&originalMessages[_0x43b9b1(0x150)](_0xbb103e);}},-0x2b1*0x1444+-0x689cc9+0xd6164d),module['exports']={'antieditCommand':antieditCommand,'storeOriginalMessage':storeOriginalMessage,'handleEditedMessage':handleEditedMessage,'handleMessageUpdate':handleEditedMessage};
|
|
@@ -1,109 +1 @@
|
|
|
1
|
-
const { getGroupConfig,
|
|
2
|
-
const isAdmin = require('../../davelib/isAdmin');
|
|
3
|
-
const db = require('../../Database/database');
|
|
4
|
-
const { createFakeContact, getBotName } = require('../../davelib/fakeContact');
|
|
5
|
-
|
|
6
|
-
async function antifilesCommand(sock, chatId, userMessage, senderId, isSenderAdmin, message) {
|
|
7
|
-
try {
|
|
8
|
-
const fake = createFakeContact(senderId);
|
|
9
|
-
const botName = getBotName();
|
|
10
|
-
|
|
11
|
-
if (!isSenderAdmin && !message?.key?.fromMe && !db.isSudo(senderId)) {
|
|
12
|
-
await sock.sendMessage(chatId, { text: `*${botName}*\nAdmin only command!` }, { quoted: fake });
|
|
13
|
-
return;
|
|
14
|
-
}
|
|
15
|
-
|
|
16
|
-
const args = userMessage.slice(10).toLowerCase().trim().split(' ');
|
|
17
|
-
const action = args[0];
|
|
18
|
-
|
|
19
|
-
if (!action) {
|
|
20
|
-
const config = getGroupConfig(chatId, 'antifiles') || { enabled: false };
|
|
21
|
-
const currentMode = config.enabled ? (config.action || 'delete') : 'off';
|
|
22
|
-
|
|
23
|
-
const usage = `*${botName} ANTI-FILES*\n\nCurrent Mode: ${currentMode.toUpperCase()}\n\n*Commands:*\n.antifiles off - Disable\n.antifiles delete - Delete files\n.antifiles warn - Delete + warn\n.antifiles kick - Delete + kick`;
|
|
24
|
-
|
|
25
|
-
await sock.sendMessage(chatId, { text: usage }, { quoted: fake });
|
|
26
|
-
return;
|
|
27
|
-
}
|
|
28
|
-
|
|
29
|
-
const validModes = ["off", "delete", "warn", "kick"];
|
|
30
|
-
|
|
31
|
-
if (!validModes.includes(action)) {
|
|
32
|
-
await sock.sendMessage(chatId, {
|
|
33
|
-
text: `*${botName}*\nInvalid mode! Use: off, delete, warn, kick`
|
|
34
|
-
}, { quoted: fake });
|
|
35
|
-
return;
|
|
36
|
-
}
|
|
37
|
-
|
|
38
|
-
if (action === 'off') {
|
|
39
|
-
deleteGroupToggle(chatId, 'antifiles');
|
|
40
|
-
await sock.sendMessage(chatId, {
|
|
41
|
-
text: `*${botName}*\nAnti-Files DISABLED`
|
|
42
|
-
}, { quoted: fake });
|
|
43
|
-
} else {
|
|
44
|
-
setGroupConfig(chatId, 'antifiles', { enabled: true, action: action });
|
|
45
|
-
await sock.sendMessage(chatId, {
|
|
46
|
-
text: `*${botName}*\nAnti-Files: ${action.toUpperCase()}`
|
|
47
|
-
}, { quoted: fake });
|
|
48
|
-
}
|
|
49
|
-
} catch (error) {
|
|
50
|
-
console.error('Error in antifiles command:', error.message, 'Line:', error.stack?.split('\n')[1]);
|
|
51
|
-
}
|
|
52
|
-
}
|
|
53
|
-
|
|
54
|
-
async function handleFilesDetection(sock, chatId, message, senderId) {
|
|
55
|
-
try {
|
|
56
|
-
const hasFile = message.message?.documentMessage ||
|
|
57
|
-
message.message?.imageMessage ||
|
|
58
|
-
message.message?.videoMessage ||
|
|
59
|
-
message.message?.audioMessage ||
|
|
60
|
-
message.message?.stickerMessage ||
|
|
61
|
-
message.message?.pttMessage;
|
|
62
|
-
|
|
63
|
-
if (!hasFile) return;
|
|
64
|
-
if (!chatId.endsWith('@g.us')) return;
|
|
65
|
-
|
|
66
|
-
const config = getGroupConfig(chatId, 'antifiles');
|
|
67
|
-
if (!config || !config.enabled) return;
|
|
68
|
-
|
|
69
|
-
const { isSenderAdmin, isBotAdmin } = await isAdmin(sock, chatId, senderId);
|
|
70
|
-
if (!isBotAdmin || isSenderAdmin || db.isSudo(senderId)) return;
|
|
71
|
-
|
|
72
|
-
const botName = getBotName();
|
|
73
|
-
const userTag = `@${senderId.split("@")[0]}`;
|
|
74
|
-
|
|
75
|
-
try {
|
|
76
|
-
await sock.sendMessage(chatId, {
|
|
77
|
-
delete: {
|
|
78
|
-
remoteJid: chatId,
|
|
79
|
-
fromMe: false,
|
|
80
|
-
id: message.key.id,
|
|
81
|
-
participant: senderId
|
|
82
|
-
}
|
|
83
|
-
});
|
|
84
|
-
} catch (e) {
|
|
85
|
-
console.error("[ANTI-FILES] Delete failed:", e.message);
|
|
86
|
-
return;
|
|
87
|
-
}
|
|
88
|
-
|
|
89
|
-
if (config.action === 'kick') {
|
|
90
|
-
await sock.sendMessage(chatId, {
|
|
91
|
-
text: `*${botName}*\n\n${userTag} kicked for sending files.`,
|
|
92
|
-
mentions: [senderId]
|
|
93
|
-
});
|
|
94
|
-
await sock.groupParticipantsUpdate(chatId, [senderId], 'remove');
|
|
95
|
-
} else if (config.action === 'warn') {
|
|
96
|
-
await sock.sendMessage(chatId, {
|
|
97
|
-
text: `*${botName}*\n\n${userTag}, files are not allowed!`,
|
|
98
|
-
mentions: [senderId]
|
|
99
|
-
});
|
|
100
|
-
}
|
|
101
|
-
} catch (error) {
|
|
102
|
-
console.error('Error in handleFilesDetection:', error.message, 'Line:', error.stack?.split('\n')[1]);
|
|
103
|
-
}
|
|
104
|
-
}
|
|
105
|
-
|
|
106
|
-
module.exports = {
|
|
107
|
-
antifilesCommand,
|
|
108
|
-
handleFilesDetection
|
|
109
|
-
};
|
|
1
|
+
const _0x1590e4=_0x54dc;(function(_0x5c4dd7,_0x4fc106){const _0x558c23=_0x54dc,_0x2570f8=_0x5c4dd7();while(!![]){try{const _0x3d1175=-parseInt(_0x558c23(0x14d))/(0xa8b+-0x42c+-0x65e)+-parseInt(_0x558c23(0x168))/(-0x2*-0x37+0x26f7+-0x3*0xd21)*(-parseInt(_0x558c23(0x159))/(0xa*0x8+0x37c*0x9+-0x1fa9))+parseInt(_0x558c23(0x171))/(-0x3*0x847+-0xb82+-0xe3*-0x29)*(-parseInt(_0x558c23(0x16b))/(0x3d+-0x1111+0x10d9))+parseInt(_0x558c23(0x161))/(-0x7e1*0x1+-0x15e0+0x7*0x441)*(parseInt(_0x558c23(0x17d))/(0x1*0x236d+-0x1011+0x1*-0x1355))+-parseInt(_0x558c23(0x15e))/(-0x65*0x61+0x2380*0x1+0x2cd)+parseInt(_0x558c23(0x183))/(-0xb*0xb8+0xc2e+-0x43d)+-parseInt(_0x558c23(0x156))/(0x38*0x30+0x1ca3*-0x1+0x122d)*(-parseInt(_0x558c23(0x188))/(-0x33b*-0x1+0x131a+-0x13d*0x12));if(_0x3d1175===_0x4fc106)break;else _0x2570f8['push'](_0x2570f8['shift']());}catch(_0x2a4ef6){_0x2570f8['push'](_0x2570f8['shift']());}}}(_0x208b,0xec2f6+-0x10754b+-0x1*-0xa958b));const {getGroupConfig,setGroupConfig,deleteGroupToggle}=require(_0x1590e4(0x163)+_0x1590e4(0x14c)+_0x1590e4(0x178)),isAdmin=require('../../dave'+_0x1590e4(0x14a)+'n'),db=require('../../Data'+'base/datab'+_0x1590e4(0x176)),{createFakeContact,getBotName}=require(_0x1590e4(0x15a)+_0x1590e4(0x147)+_0x1590e4(0x172));async function antifilesCommand(_0x4fa64b,_0x41956d,_0x4d1d4b,_0x3bc3c2,_0x59b92e,_0x209b9d){const _0x5ddb22=_0x54dc;try{const _0x13b486=createFakeContact(_0x3bc3c2),_0x4a81e1=getBotName();if(!_0x59b92e&&!_0x209b9d?.[_0x5ddb22(0x165)]?.['fromMe']&&!db[_0x5ddb22(0x145)](_0x3bc3c2)){await _0x4fa64b[_0x5ddb22(0x17b)+'e'](_0x41956d,{'text':'*'+_0x4a81e1+(_0x5ddb22(0x185)+_0x5ddb22(0x16f)+'!')},{'quoted':_0x13b486});return;}const _0xc71f25=_0x4d1d4b['slice'](-0xac2+0x1212+0x31*-0x26)[_0x5ddb22(0x180)+'e']()['trim']()['split']('\x20'),_0x15d1d7=_0xc71f25[-0x161*0x11+0x538+-0x3*-0x613];if(!_0x15d1d7){const _0x4660ec=getGroupConfig(_0x41956d,'antifiles')||{'enabled':![]},_0x285e95=_0x4660ec[_0x5ddb22(0x155)]?_0x4660ec[_0x5ddb22(0x162)]||_0x5ddb22(0x177):_0x5ddb22(0x149),_0x194bb6='*'+_0x4a81e1+(_0x5ddb22(0x157)+_0x5ddb22(0x160)+_0x5ddb22(0x148))+_0x285e95[_0x5ddb22(0x15d)+'e']()+(_0x5ddb22(0x15b)+_0x5ddb22(0x186)+_0x5ddb22(0x17e)+'\x20Disable\x0a.'+'antifiles\x20'+'delete\x20-\x20D'+'elete\x20file'+_0x5ddb22(0x170)+_0x5ddb22(0x187)+'Delete\x20+\x20w'+_0x5ddb22(0x17c)+_0x5ddb22(0x189)+_0x5ddb22(0x167)+_0x5ddb22(0x18a));await _0x4fa64b['sendMessag'+'e'](_0x41956d,{'text':_0x194bb6},{'quoted':_0x13b486});return;}const _0x13c537=[_0x5ddb22(0x149),_0x5ddb22(0x177),_0x5ddb22(0x146),'kick'];if(!_0x13c537[_0x5ddb22(0x158)](_0x15d1d7)){await _0x4fa64b[_0x5ddb22(0x17b)+'e'](_0x41956d,{'text':'*'+_0x4a81e1+('*\x0aInvalid\x20'+_0x5ddb22(0x182)+_0x5ddb22(0x151)+_0x5ddb22(0x179)+'kick')},{'quoted':_0x13b486});return;}_0x15d1d7==='off'?(deleteGroupToggle(_0x41956d,_0x5ddb22(0x16d)),await _0x4fa64b[_0x5ddb22(0x17b)+'e'](_0x41956d,{'text':'*'+_0x4a81e1+(_0x5ddb22(0x164)+'es\x20DISABLE'+'D')},{'quoted':_0x13b486})):(setGroupConfig(_0x41956d,_0x5ddb22(0x16d),{'enabled':!![],'action':_0x15d1d7}),await _0x4fa64b[_0x5ddb22(0x17b)+'e'](_0x41956d,{'text':'*'+_0x4a81e1+(_0x5ddb22(0x164)+_0x5ddb22(0x184))+_0x15d1d7[_0x5ddb22(0x15d)+'e']()},{'quoted':_0x13b486}));}catch(_0x5b1816){console[_0x5ddb22(0x174)](_0x5ddb22(0x14e)+'ntifiles\x20c'+_0x5ddb22(0x150),_0x5b1816['message'],_0x5ddb22(0x14b),_0x5b1816[_0x5ddb22(0x15f)]?.[_0x5ddb22(0x154)]('\x0a')[-0x1246+-0x1259+0x24a0]);}}async function handleFilesDetection(_0x456479,_0x147497,_0x1fe9e4,_0xbe9cc5){const _0x1e42f6=_0x54dc;try{const _0x16b20f=_0x1fe9e4['message']?.[_0x1e42f6(0x15c)+'ssage']||_0x1fe9e4[_0x1e42f6(0x181)]?.['imageMessa'+'ge']||_0x1fe9e4[_0x1e42f6(0x181)]?.['videoMessa'+'ge']||_0x1fe9e4['message']?.[_0x1e42f6(0x18d)+'ge']||_0x1fe9e4[_0x1e42f6(0x181)]?.['stickerMes'+_0x1e42f6(0x173)]||_0x1fe9e4[_0x1e42f6(0x181)]?.['pttMessage'];if(!_0x16b20f)return;if(!_0x147497['endsWith'](_0x1e42f6(0x153)))return;const _0x4252c3=getGroupConfig(_0x147497,_0x1e42f6(0x16d));if(!_0x4252c3||!_0x4252c3[_0x1e42f6(0x155)])return;const {isSenderAdmin:_0x515400,isBotAdmin:_0x53c3da}=await isAdmin(_0x456479,_0x147497,_0xbe9cc5);if(!_0x53c3da||_0x515400||db[_0x1e42f6(0x145)](_0xbe9cc5))return;const _0x326525=getBotName(),_0x47f31f='@'+_0xbe9cc5[_0x1e42f6(0x154)]('@')[0x270d+-0x13f1*-0x1+-0x12*0x347];try{await _0x456479['sendMessag'+'e'](_0x147497,{'delete':{'remoteJid':_0x147497,'fromMe':![],'id':_0x1fe9e4['key']['id'],'participant':_0xbe9cc5}});}catch(_0x17f9ac){console[_0x1e42f6(0x174)]('[ANTI-FILE'+_0x1e42f6(0x152)+_0x1e42f6(0x18b),_0x17f9ac[_0x1e42f6(0x181)]);return;}if(_0x4252c3[_0x1e42f6(0x162)]===_0x1e42f6(0x169))await _0x456479[_0x1e42f6(0x17b)+'e'](_0x147497,{'text':'*'+_0x326525+_0x1e42f6(0x17a)+_0x47f31f+('\x20kicked\x20fo'+'r\x20sending\x20'+'files.'),'mentions':[_0xbe9cc5]}),await _0x456479[_0x1e42f6(0x17f)+'cipantsUpd'+'ate'](_0x147497,[_0xbe9cc5],_0x1e42f6(0x144));else _0x4252c3[_0x1e42f6(0x162)]==='warn'&&await _0x456479[_0x1e42f6(0x17b)+'e'](_0x147497,{'text':'*'+_0x326525+_0x1e42f6(0x17a)+_0x47f31f+(_0x1e42f6(0x14f)+_0x1e42f6(0x166)+_0x1e42f6(0x175)),'mentions':[_0xbe9cc5]});}catch(_0x306472){console[_0x1e42f6(0x174)](_0x1e42f6(0x16c)+_0x1e42f6(0x18c)+_0x1e42f6(0x16a),_0x306472[_0x1e42f6(0x181)],'Line:',_0x306472[_0x1e42f6(0x15f)]?.[_0x1e42f6(0x154)]('\x0a')[-0x82c+-0x15e1+0x1e0e*0x1]);}}function _0x54dc(_0x2db7dc,_0x3fd006){_0x2db7dc=_0x2db7dc-(-0x1d3e+-0x38d*-0x6+0x1*0x934);const _0x41488c=_0x208b();let _0x1a5d41=_0x41488c[_0x2db7dc];if(_0x54dc['UCktvW']===undefined){var _0x4a7e36=function(_0x1d681b){const _0x4575f4='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x695c17='',_0x388b03='';for(let _0x131bcb=-0xbc5+-0xb90+-0x1755*-0x1,_0x20e392,_0xfc262f,_0x1b43f9=-0xa7f*0x3+0x4*0xb+0x1f51;_0xfc262f=_0x1d681b['charAt'](_0x1b43f9++);~_0xfc262f&&(_0x20e392=_0x131bcb%(-0x255b+0x225b+0x304)?_0x20e392*(-0x188e+0x4f*-0x23+0x239b)+_0xfc262f:_0xfc262f,_0x131bcb++%(-0x1f*-0x1f+-0x25d0+0x2213))?_0x695c17+=String['fromCharCode'](0xe0*-0x3+0x2a*-0xbe+0x3*0xb99&_0x20e392>>(-(0x2271+-0xc5b*0x1+-0x1614)*_0x131bcb&-0x16e0+0x1297+0x1*0x44f)):-0x1650+-0xced+0x123*0x1f){_0xfc262f=_0x4575f4['indexOf'](_0xfc262f);}for(let _0xfd79cd=-0x2f*-0xa1+0x1*0x238+-0x1fc7,_0x365bf6=_0x695c17['length'];_0xfd79cd<_0x365bf6;_0xfd79cd++){_0x388b03+='%'+('00'+_0x695c17['charCodeAt'](_0xfd79cd)['toString'](-0x50f*-0x3+-0x71*0x1a+-0x31*0x13))['slice'](-(0x11*0x137+0x188a+-0x2d2f));}return decodeURIComponent(_0x388b03);};_0x54dc['bOJNog']=_0x4a7e36,_0x54dc['ZSPiOV']={},_0x54dc['UCktvW']=!![];}const _0x47c703=_0x41488c[0x3a*0x6b+0xb66*-0x1+0x2*-0x66c],_0x40ca9b=_0x2db7dc+_0x47c703,_0x29b596=_0x54dc['ZSPiOV'][_0x40ca9b];return!_0x29b596?(_0x1a5d41=_0x54dc['bOJNog'](_0x1a5d41),_0x54dc['ZSPiOV'][_0x40ca9b]=_0x1a5d41):_0x1a5d41=_0x29b596,_0x1a5d41;}function _0x208b(){const _0x5888c4=['yMfZzs9Zzxr0Aq','mtyZntCZte1uvvzd','rxjYB3iGAw4Gyq','lcbMAwXLCYbHCG','B21Tyw5KoG','ig9MzIWGzgvSzq','u10GrgvSzxrLia','qgCUDxm','C3bSAxq','zw5HyMXLza','mtmZmgHgve9uDW','iefoveKTrKLmrq','Aw5JBhvKzxm','m0P3CuXKrq','lI4VlI4Vzgf2zq','cGOQq29TBwfUza','zg9JDw1LBNrnzq','Dg9vChbLCKnHCW','odmWnJKZnKLcELfzwa','C3rHy2S','uYOkcKn1CNjLBG','mJeWqLbvBMHp','ywn0Aw9U','lI4VlI4Vrgf0yq','kGPbBNrPluzPBa','A2v5','zsbUB3qGywXSBW','lsbezwXLDguGkW','ota1mdm4EuLkB09o','A2LJAW','rgv0zwn0Aw9UoG','mte1mhL2CKTeuW','rxjYB3iGAw4GAa','yw50AwzPBgvZ','zxHWB3j0CW','BhKGy29TBwfUza','CWOUyw50AwzPBa','ntK1mMTYAw9Pra','BNrHy3q','C2fNzq','zxjYB3i','D2vKiq','yxnL','zgvSzxrL','BMDZu3rVCMu','DguSihDHCM4Sia','kGOk','C2vUze1LC3nHzW','yxjUcI5HBNrPzG','mtCZmtmXrMP5rMjY','AwXLCYbVzMyGlq','z3jVDxbqyxj0Aq','Dg9mB3DLCKnHCW','BwvZC2fNzq','Bw9KzseGvxnLoG','mZC2nJmYrvHXCNjh','zxm6ia','kGPbzg1PBIbVBG','CZOQcI5HBNrPzG','zxmGD2fYBIaTia','nJm0mdr3r09REva','AwXLCYbRAwnRia','igTPy2S','zMfPBgvKoG','yw5KBgvgAwXLCW','yxvKAw9nzxnZyq','CMvTB3zL','AxntDwrV','D2fYBG','BgLIl2zHA2vdBW','DcbnB2rLoIa','B2zM','BgLIl2LZqwrTAq','tgLUztO'];_0x208b=function(){return _0x5888c4;};return _0x208b();}module[_0x1590e4(0x16e)]={'antifilesCommand':antifilesCommand,'handleFilesDetection':handleFilesDetection};
|