@arcaelas/whatsapp 3.0.2 → 3.2.0

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.
Files changed (37) hide show
  1. package/build/cjs/_index.d.ts +14 -0
  2. package/build/cjs/_index.js +346 -0
  3. package/build/cjs/_index.js.map +1 -0
  4. package/build/cjs/index.d.ts +2 -0
  5. package/build/cjs/index.js +4 -1
  6. package/build/cjs/index.js.map +1 -1
  7. package/build/cjs/lib/chat/index.d.ts +36 -3
  8. package/build/cjs/lib/chat/index.js +20 -3
  9. package/build/cjs/lib/chat/index.js.map +1 -1
  10. package/build/cjs/lib/message/index.d.ts +49 -9
  11. package/build/cjs/lib/message/index.js +106 -24
  12. package/build/cjs/lib/message/index.js.map +1 -1
  13. package/build/cjs/lib/status/index.d.ts +85 -0
  14. package/build/cjs/lib/status/index.js +137 -0
  15. package/build/cjs/lib/status/index.js.map +1 -0
  16. package/build/cjs/lib/whatsapp/index.d.ts +7 -1
  17. package/build/cjs/lib/whatsapp/index.js +132 -16
  18. package/build/cjs/lib/whatsapp/index.js.map +1 -1
  19. package/build/esm/_index.d.ts +14 -0
  20. package/build/esm/_index.js +344 -0
  21. package/build/esm/_index.js.map +1 -0
  22. package/build/esm/index.d.ts +2 -0
  23. package/build/esm/index.js +1 -0
  24. package/build/esm/index.js.map +1 -1
  25. package/build/esm/lib/chat/index.d.ts +36 -3
  26. package/build/esm/lib/chat/index.js +20 -3
  27. package/build/esm/lib/chat/index.js.map +1 -1
  28. package/build/esm/lib/message/index.d.ts +49 -9
  29. package/build/esm/lib/message/index.js +107 -25
  30. package/build/esm/lib/message/index.js.map +1 -1
  31. package/build/esm/lib/status/index.d.ts +85 -0
  32. package/build/esm/lib/status/index.js +133 -0
  33. package/build/esm/lib/status/index.js.map +1 -0
  34. package/build/esm/lib/whatsapp/index.d.ts +7 -1
  35. package/build/esm/lib/whatsapp/index.js +133 -17
  36. package/build/esm/lib/whatsapp/index.js.map +1 -1
  37. package/package.json +1 -1
@@ -0,0 +1,344 @@
1
+ /**
2
+ * @file _index.ts
3
+ * @description Bot de prueba manual de @arcaelas/whatsapp v3. Engancha cada evento del
4
+ * cliente con un console.log para inspeccionar el ciclo de vida real. No se publica
5
+ * (archivo prefijado con underscore — excluir de build cuando se versione).
6
+ *
7
+ * Ejecutar:
8
+ * npx tsx src/_index.ts
9
+ *
10
+ * Variables de entorno:
11
+ * PHONE → número (solo dígitos) para pairing por PIN. Si falta, se usa QR.
12
+ * SESSION → carpeta de sesión (default: ./.session)
13
+ */
14
+ var __runInitializers = (this && this.__runInitializers) || function (thisArg, initializers, value) {
15
+ var useValue = arguments.length > 2;
16
+ for (var i = 0; i < initializers.length; i++) {
17
+ value = useValue ? initializers[i].call(thisArg, value) : initializers[i].call(thisArg);
18
+ }
19
+ return useValue ? value : void 0;
20
+ };
21
+ var __esDecorate = (this && this.__esDecorate) || function (ctor, descriptorIn, decorators, contextIn, initializers, extraInitializers) {
22
+ function accept(f) { if (f !== void 0 && typeof f !== "function") throw new TypeError("Function expected"); return f; }
23
+ var kind = contextIn.kind, key = kind === "getter" ? "get" : kind === "setter" ? "set" : "value";
24
+ var target = !descriptorIn && ctor ? contextIn["static"] ? ctor : ctor.prototype : null;
25
+ var descriptor = descriptorIn || (target ? Object.getOwnPropertyDescriptor(target, contextIn.name) : {});
26
+ var _, done = false;
27
+ for (var i = decorators.length - 1; i >= 0; i--) {
28
+ var context = {};
29
+ for (var p in contextIn) context[p] = p === "access" ? {} : contextIn[p];
30
+ for (var p in contextIn.access) context.access[p] = contextIn.access[p];
31
+ context.addInitializer = function (f) { if (done) throw new TypeError("Cannot add initializers after decoration has completed"); extraInitializers.push(accept(f || null)); };
32
+ var result = (0, decorators[i])(kind === "accessor" ? { get: descriptor.get, set: descriptor.set } : descriptor[key], context);
33
+ if (kind === "accessor") {
34
+ if (result === void 0) continue;
35
+ if (result === null || typeof result !== "object") throw new TypeError("Object expected");
36
+ if (_ = accept(result.get)) descriptor.get = _;
37
+ if (_ = accept(result.set)) descriptor.set = _;
38
+ if (_ = accept(result.init)) initializers.unshift(_);
39
+ }
40
+ else if (_ = accept(result)) {
41
+ if (kind === "field") initializers.unshift(_);
42
+ else descriptor[key] = _;
43
+ }
44
+ }
45
+ if (target) Object.defineProperty(target, contextIn.name, descriptor);
46
+ done = true;
47
+ };
48
+ import { writeFile } from 'node:fs/promises';
49
+ import { join } from 'node:path';
50
+ import { FileSystemEngine } from './lib/store/index.js';
51
+ import { Bot, command, connect, disconnect, every, on, pair, WhatsAppBot, } from './lib/bot/index.js';
52
+ const SESSION_DIR = process.env.SESSION ?? join(__dirname, '..', '.session');
53
+ const PHONE = process.env.PHONE;
54
+ const QR_FILE = join(__dirname, '..', '.session.qr.png');
55
+ const log = (event, ...rest) => console.log(`[${new Date().toISOString()}] ${event}`, ...rest);
56
+ let TestBot = (() => {
57
+ let _classDecorators = [Bot({
58
+ engine: new FileSystemEngine(SESSION_DIR),
59
+ phone: PHONE,
60
+ reconnect: true,
61
+ autoclean: true,
62
+ })];
63
+ let _classDescriptor;
64
+ let _classExtraInitializers = [];
65
+ let _classThis;
66
+ let _classSuper = WhatsAppBot;
67
+ let _instanceExtraInitializers = [];
68
+ let _on_pair_decorators;
69
+ let _on_connected_decorators;
70
+ let _on_disconnected_decorators;
71
+ let _heartbeat_decorators;
72
+ let _on_contact_created_decorators;
73
+ let _on_contact_updated_decorators;
74
+ let _on_contact_deleted_decorators;
75
+ let _on_chat_created_decorators;
76
+ let _on_chat_deleted_decorators;
77
+ let _on_chat_pinned_decorators;
78
+ let _on_chat_unpinned_decorators;
79
+ let _on_chat_archived_decorators;
80
+ let _on_chat_unarchived_decorators;
81
+ let _on_chat_muted_decorators;
82
+ let _on_chat_unmuted_decorators;
83
+ let _on_message_created_decorators;
84
+ let _on_message_updated_decorators;
85
+ let _on_message_deleted_decorators;
86
+ let _on_message_reacted_decorators;
87
+ let _on_msg_starred_decorators;
88
+ let _on_msg_unstarred_decorators;
89
+ let _on_msg_forwarded_decorators;
90
+ let _on_msg_seen_decorators;
91
+ let _on_feed_created_decorators;
92
+ let _on_feed_updated_decorators;
93
+ let _on_feed_deleted_decorators;
94
+ let _cmd_ping_decorators;
95
+ let _cmd_echo_decorators;
96
+ let _cmd_info_decorators;
97
+ let _cmd_poll_decorators;
98
+ let _cmd_vote_decorators;
99
+ let _cmd_polls_decorators;
100
+ var TestBot = class extends _classSuper {
101
+ static { _classThis = this; }
102
+ static {
103
+ const _metadata = typeof Symbol === "function" && Symbol.metadata ? Object.create(_classSuper[Symbol.metadata] ?? null) : void 0;
104
+ _on_pair_decorators = [pair()];
105
+ _on_connected_decorators = [connect()];
106
+ _on_disconnected_decorators = [disconnect()];
107
+ _heartbeat_decorators = [every(60_000)];
108
+ _on_contact_created_decorators = [on('contact:created')];
109
+ _on_contact_updated_decorators = [on('contact:updated')];
110
+ _on_contact_deleted_decorators = [on('contact:deleted')];
111
+ _on_chat_created_decorators = [on('chat:created')];
112
+ _on_chat_deleted_decorators = [on('chat:deleted')];
113
+ _on_chat_pinned_decorators = [on('chat:pinned')];
114
+ _on_chat_unpinned_decorators = [on('chat:unpinned')];
115
+ _on_chat_archived_decorators = [on('chat:archived')];
116
+ _on_chat_unarchived_decorators = [on('chat:unarchived')];
117
+ _on_chat_muted_decorators = [on('chat:muted')];
118
+ _on_chat_unmuted_decorators = [on('chat:unmuted')];
119
+ _on_message_created_decorators = [on('message:created')];
120
+ _on_message_updated_decorators = [on('message:updated')];
121
+ _on_message_deleted_decorators = [on('message:deleted')];
122
+ _on_message_reacted_decorators = [on('message:reacted')];
123
+ _on_msg_starred_decorators = [on('message:starred')];
124
+ _on_msg_unstarred_decorators = [on('message:unstarred')];
125
+ _on_msg_forwarded_decorators = [on('message:forwarded')];
126
+ _on_msg_seen_decorators = [on('message:seen')];
127
+ _on_feed_created_decorators = [on('feed:created')];
128
+ _on_feed_updated_decorators = [on('feed:updated')];
129
+ _on_feed_deleted_decorators = [on('feed:deleted')];
130
+ _cmd_ping_decorators = [command('!ping')];
131
+ _cmd_echo_decorators = [command('!echo')];
132
+ _cmd_info_decorators = [command(/^!info\b/)];
133
+ _cmd_poll_decorators = [command(/^!poll\s+(.+)/s)];
134
+ _cmd_vote_decorators = [command(/^!vote\s+(.+)/)];
135
+ _cmd_polls_decorators = [command('!polls')];
136
+ __esDecorate(this, null, _on_pair_decorators, { kind: "method", name: "on_pair", static: false, private: false, access: { has: obj => "on_pair" in obj, get: obj => obj.on_pair }, metadata: _metadata }, null, _instanceExtraInitializers);
137
+ __esDecorate(this, null, _on_connected_decorators, { kind: "method", name: "on_connected", static: false, private: false, access: { has: obj => "on_connected" in obj, get: obj => obj.on_connected }, metadata: _metadata }, null, _instanceExtraInitializers);
138
+ __esDecorate(this, null, _on_disconnected_decorators, { kind: "method", name: "on_disconnected", static: false, private: false, access: { has: obj => "on_disconnected" in obj, get: obj => obj.on_disconnected }, metadata: _metadata }, null, _instanceExtraInitializers);
139
+ __esDecorate(this, null, _heartbeat_decorators, { kind: "method", name: "heartbeat", static: false, private: false, access: { has: obj => "heartbeat" in obj, get: obj => obj.heartbeat }, metadata: _metadata }, null, _instanceExtraInitializers);
140
+ __esDecorate(this, null, _on_contact_created_decorators, { kind: "method", name: "on_contact_created", static: false, private: false, access: { has: obj => "on_contact_created" in obj, get: obj => obj.on_contact_created }, metadata: _metadata }, null, _instanceExtraInitializers);
141
+ __esDecorate(this, null, _on_contact_updated_decorators, { kind: "method", name: "on_contact_updated", static: false, private: false, access: { has: obj => "on_contact_updated" in obj, get: obj => obj.on_contact_updated }, metadata: _metadata }, null, _instanceExtraInitializers);
142
+ __esDecorate(this, null, _on_contact_deleted_decorators, { kind: "method", name: "on_contact_deleted", static: false, private: false, access: { has: obj => "on_contact_deleted" in obj, get: obj => obj.on_contact_deleted }, metadata: _metadata }, null, _instanceExtraInitializers);
143
+ __esDecorate(this, null, _on_chat_created_decorators, { kind: "method", name: "on_chat_created", static: false, private: false, access: { has: obj => "on_chat_created" in obj, get: obj => obj.on_chat_created }, metadata: _metadata }, null, _instanceExtraInitializers);
144
+ __esDecorate(this, null, _on_chat_deleted_decorators, { kind: "method", name: "on_chat_deleted", static: false, private: false, access: { has: obj => "on_chat_deleted" in obj, get: obj => obj.on_chat_deleted }, metadata: _metadata }, null, _instanceExtraInitializers);
145
+ __esDecorate(this, null, _on_chat_pinned_decorators, { kind: "method", name: "on_chat_pinned", static: false, private: false, access: { has: obj => "on_chat_pinned" in obj, get: obj => obj.on_chat_pinned }, metadata: _metadata }, null, _instanceExtraInitializers);
146
+ __esDecorate(this, null, _on_chat_unpinned_decorators, { kind: "method", name: "on_chat_unpinned", static: false, private: false, access: { has: obj => "on_chat_unpinned" in obj, get: obj => obj.on_chat_unpinned }, metadata: _metadata }, null, _instanceExtraInitializers);
147
+ __esDecorate(this, null, _on_chat_archived_decorators, { kind: "method", name: "on_chat_archived", static: false, private: false, access: { has: obj => "on_chat_archived" in obj, get: obj => obj.on_chat_archived }, metadata: _metadata }, null, _instanceExtraInitializers);
148
+ __esDecorate(this, null, _on_chat_unarchived_decorators, { kind: "method", name: "on_chat_unarchived", static: false, private: false, access: { has: obj => "on_chat_unarchived" in obj, get: obj => obj.on_chat_unarchived }, metadata: _metadata }, null, _instanceExtraInitializers);
149
+ __esDecorate(this, null, _on_chat_muted_decorators, { kind: "method", name: "on_chat_muted", static: false, private: false, access: { has: obj => "on_chat_muted" in obj, get: obj => obj.on_chat_muted }, metadata: _metadata }, null, _instanceExtraInitializers);
150
+ __esDecorate(this, null, _on_chat_unmuted_decorators, { kind: "method", name: "on_chat_unmuted", static: false, private: false, access: { has: obj => "on_chat_unmuted" in obj, get: obj => obj.on_chat_unmuted }, metadata: _metadata }, null, _instanceExtraInitializers);
151
+ __esDecorate(this, null, _on_message_created_decorators, { kind: "method", name: "on_message_created", static: false, private: false, access: { has: obj => "on_message_created" in obj, get: obj => obj.on_message_created }, metadata: _metadata }, null, _instanceExtraInitializers);
152
+ __esDecorate(this, null, _on_message_updated_decorators, { kind: "method", name: "on_message_updated", static: false, private: false, access: { has: obj => "on_message_updated" in obj, get: obj => obj.on_message_updated }, metadata: _metadata }, null, _instanceExtraInitializers);
153
+ __esDecorate(this, null, _on_message_deleted_decorators, { kind: "method", name: "on_message_deleted", static: false, private: false, access: { has: obj => "on_message_deleted" in obj, get: obj => obj.on_message_deleted }, metadata: _metadata }, null, _instanceExtraInitializers);
154
+ __esDecorate(this, null, _on_message_reacted_decorators, { kind: "method", name: "on_message_reacted", static: false, private: false, access: { has: obj => "on_message_reacted" in obj, get: obj => obj.on_message_reacted }, metadata: _metadata }, null, _instanceExtraInitializers);
155
+ __esDecorate(this, null, _on_msg_starred_decorators, { kind: "method", name: "on_msg_starred", static: false, private: false, access: { has: obj => "on_msg_starred" in obj, get: obj => obj.on_msg_starred }, metadata: _metadata }, null, _instanceExtraInitializers);
156
+ __esDecorate(this, null, _on_msg_unstarred_decorators, { kind: "method", name: "on_msg_unstarred", static: false, private: false, access: { has: obj => "on_msg_unstarred" in obj, get: obj => obj.on_msg_unstarred }, metadata: _metadata }, null, _instanceExtraInitializers);
157
+ __esDecorate(this, null, _on_msg_forwarded_decorators, { kind: "method", name: "on_msg_forwarded", static: false, private: false, access: { has: obj => "on_msg_forwarded" in obj, get: obj => obj.on_msg_forwarded }, metadata: _metadata }, null, _instanceExtraInitializers);
158
+ __esDecorate(this, null, _on_msg_seen_decorators, { kind: "method", name: "on_msg_seen", static: false, private: false, access: { has: obj => "on_msg_seen" in obj, get: obj => obj.on_msg_seen }, metadata: _metadata }, null, _instanceExtraInitializers);
159
+ __esDecorate(this, null, _on_feed_created_decorators, { kind: "method", name: "on_feed_created", static: false, private: false, access: { has: obj => "on_feed_created" in obj, get: obj => obj.on_feed_created }, metadata: _metadata }, null, _instanceExtraInitializers);
160
+ __esDecorate(this, null, _on_feed_updated_decorators, { kind: "method", name: "on_feed_updated", static: false, private: false, access: { has: obj => "on_feed_updated" in obj, get: obj => obj.on_feed_updated }, metadata: _metadata }, null, _instanceExtraInitializers);
161
+ __esDecorate(this, null, _on_feed_deleted_decorators, { kind: "method", name: "on_feed_deleted", static: false, private: false, access: { has: obj => "on_feed_deleted" in obj, get: obj => obj.on_feed_deleted }, metadata: _metadata }, null, _instanceExtraInitializers);
162
+ __esDecorate(this, null, _cmd_ping_decorators, { kind: "method", name: "cmd_ping", static: false, private: false, access: { has: obj => "cmd_ping" in obj, get: obj => obj.cmd_ping }, metadata: _metadata }, null, _instanceExtraInitializers);
163
+ __esDecorate(this, null, _cmd_echo_decorators, { kind: "method", name: "cmd_echo", static: false, private: false, access: { has: obj => "cmd_echo" in obj, get: obj => obj.cmd_echo }, metadata: _metadata }, null, _instanceExtraInitializers);
164
+ __esDecorate(this, null, _cmd_info_decorators, { kind: "method", name: "cmd_info", static: false, private: false, access: { has: obj => "cmd_info" in obj, get: obj => obj.cmd_info }, metadata: _metadata }, null, _instanceExtraInitializers);
165
+ __esDecorate(this, null, _cmd_poll_decorators, { kind: "method", name: "cmd_poll", static: false, private: false, access: { has: obj => "cmd_poll" in obj, get: obj => obj.cmd_poll }, metadata: _metadata }, null, _instanceExtraInitializers);
166
+ __esDecorate(this, null, _cmd_vote_decorators, { kind: "method", name: "cmd_vote", static: false, private: false, access: { has: obj => "cmd_vote" in obj, get: obj => obj.cmd_vote }, metadata: _metadata }, null, _instanceExtraInitializers);
167
+ __esDecorate(this, null, _cmd_polls_decorators, { kind: "method", name: "cmd_polls", static: false, private: false, access: { has: obj => "cmd_polls" in obj, get: obj => obj.cmd_polls }, metadata: _metadata }, null, _instanceExtraInitializers);
168
+ __esDecorate(null, _classDescriptor = { value: _classThis }, _classDecorators, { kind: "class", name: _classThis.name, metadata: _metadata }, null, _classExtraInitializers);
169
+ TestBot = _classThis = _classDescriptor.value;
170
+ if (_metadata) Object.defineProperty(_classThis, Symbol.metadata, { enumerable: true, configurable: true, writable: true, value: _metadata });
171
+ __runInitializers(_classThis, _classExtraInitializers);
172
+ }
173
+ async on_pair(auth) {
174
+ if (typeof auth === 'string') {
175
+ log('pair:pin', auth);
176
+ }
177
+ else {
178
+ await writeFile(QR_FILE, auth);
179
+ log('pair:qr', `wrote PNG → ${QR_FILE} (open it and scan)`);
180
+ }
181
+ }
182
+ on_connected() {
183
+ log('connected', { socket_user: this._socket?.user?.id ?? null });
184
+ }
185
+ on_disconnected() {
186
+ log('disconnected');
187
+ }
188
+ heartbeat() {
189
+ log('heartbeat', { connected: this._socket !== null });
190
+ }
191
+ on_contact_created(c) {
192
+ log('contact:created', { id: c.id, name: c.name ?? null });
193
+ }
194
+ on_contact_updated(c) {
195
+ log('contact:updated', { id: c.id, name: c.name ?? null });
196
+ }
197
+ on_contact_deleted(c) {
198
+ log('contact:deleted', { id: c.id });
199
+ }
200
+ on_chat_created(chat) {
201
+ log('chat:created', { id: chat.id, name: chat.name ?? null });
202
+ }
203
+ on_chat_deleted(chat) {
204
+ log('chat:deleted', { id: chat.id });
205
+ }
206
+ on_chat_pinned(chat) { log('chat:pinned', chat.id); }
207
+ on_chat_unpinned(chat) { log('chat:unpinned', chat.id); }
208
+ on_chat_archived(chat) { log('chat:archived', chat.id); }
209
+ on_chat_unarchived(chat) { log('chat:unarchived', chat.id); }
210
+ on_chat_muted(chat) { log('chat:muted', chat.id); }
211
+ on_chat_unmuted(chat) { log('chat:unmuted', chat.id); }
212
+ on_message_created(msg, chat) {
213
+ const base = {
214
+ id: msg.id,
215
+ chat: chat.name ?? chat.id,
216
+ from: msg.from,
217
+ me: msg.me,
218
+ type: msg.type,
219
+ mime: msg.mime,
220
+ caption: msg.caption,
221
+ };
222
+ if (msg.type === 'poll') {
223
+ const poll = msg;
224
+ log('message:created', { ...base, multiple: poll.multiple, options: poll.options });
225
+ }
226
+ else {
227
+ log('message:created', base);
228
+ }
229
+ }
230
+ on_message_updated(msg) {
231
+ const base = { id: msg.id, cid: msg.cid, edited: msg.edited, caption: msg.caption };
232
+ if (msg.type === 'poll') {
233
+ const poll = msg;
234
+ log('message:updated', { ...base, multiple: poll.multiple, options: poll.options });
235
+ }
236
+ else {
237
+ log('message:updated', base);
238
+ }
239
+ }
240
+ on_message_deleted(msg) {
241
+ log('message:deleted', { id: msg.id, cid: msg.cid });
242
+ }
243
+ on_message_reacted(msg, _chat, emoji) {
244
+ log('message:reacted', { id: msg.id, cid: msg.cid, emoji });
245
+ }
246
+ on_msg_starred(msg) { log('message:starred', msg.id); }
247
+ on_msg_unstarred(msg) { log('message:unstarred', msg.id); }
248
+ on_msg_forwarded(msg) { log('message:forwarded', msg.id); }
249
+ on_msg_seen(msg) { log('message:seen', msg.id); }
250
+ async on_feed_created(feed) {
251
+ const author = await feed.author();
252
+ log('feed:created', {
253
+ id: feed.id,
254
+ type: feed.type,
255
+ viewed: feed.viewed,
256
+ caption: feed.caption,
257
+ author: { id: author.id, name: author.name ?? null },
258
+ });
259
+ }
260
+ on_feed_updated(feed) {
261
+ log('feed:updated', { id: feed.id, viewed: feed.viewed });
262
+ }
263
+ on_feed_deleted(feed) {
264
+ log('feed:deleted', { id: feed.id });
265
+ }
266
+ async cmd_ping(msg) {
267
+ log('command:!ping');
268
+ await msg.text('pong');
269
+ }
270
+ async cmd_echo(msg, _chat, args) {
271
+ log('command:!echo', args);
272
+ await msg.text(args.length > 0 ? args.join(' ') : '(empty)');
273
+ }
274
+ async cmd_info(msg) {
275
+ log('command:!info', { id: msg.id, cid: msg.cid, from: msg.from, type: msg.type });
276
+ await msg.text(`id=${msg.id}\ncid=${msg.cid}\nfrom=${msg.from}\ntype=${msg.type}`);
277
+ }
278
+ async cmd_poll(msg, _chat, [rest]) {
279
+ const multi_prefix = /^multi:\s*/i;
280
+ const multiple = multi_prefix.test(rest);
281
+ const body = rest.replace(multi_prefix, '');
282
+ const parts = body.split('|').map((s) => s.trim()).filter((s) => s.length > 0);
283
+ const [question, ...options] = parts;
284
+ log('command:!poll', { multiple, question, options });
285
+ if (!question || options.length < 2) {
286
+ await msg.text('Uso: !poll [multi:] Pregunta? | Opcion1 | Opcion2 [| Opcion3 ...]');
287
+ return;
288
+ }
289
+ const sent = await msg.poll({ content: question, options: options.map((content) => ({ content })) }, { multiple });
290
+ log(' poll sent:', { id: sent?.id ?? null, multiple: sent?.multiple ?? null });
291
+ }
292
+ async cmd_vote(msg, chat, [rest]) {
293
+ const indices = rest.split(',').map((s) => parseInt(s.trim(), 10)).filter((n) => Number.isFinite(n));
294
+ log('command:!vote', { chat: chat.id, indices });
295
+ if (indices.length === 0) {
296
+ await msg.text('Uso: !vote 0 o !vote 0,2');
297
+ return;
298
+ }
299
+ const messages = await this.Message.list(chat.id, 0, 50);
300
+ const last_poll = messages.find((m) => m.type === 'poll');
301
+ if (!last_poll) {
302
+ await msg.text('No hay polls en este chat');
303
+ return;
304
+ }
305
+ const ok = await last_poll.select(indices.length === 1 ? indices[0] : indices);
306
+ log(' vote result:', { poll: last_poll.id, ok });
307
+ await msg.text(`vote ${ok ? 'ok' : 'failed'} on ${last_poll.id}`);
308
+ }
309
+ async cmd_polls(msg, chat) {
310
+ const messages = await this.Message.list(chat.id, 0, 50);
311
+ const polls = messages.filter((m) => m.type === 'poll');
312
+ log('command:!polls', { count: polls.length });
313
+ if (polls.length === 0) {
314
+ await msg.text('No hay polls en este chat');
315
+ return;
316
+ }
317
+ const summary = polls.map((p) => {
318
+ const opts = p.options.map((o, i) => ` ${i}. ${o.content} [${o.count}]`).join('\n');
319
+ return `${p.id} (${p.multiple ? 'multi' : 'single'}): ${p.caption}\n${opts}`;
320
+ }).join('\n\n');
321
+ await msg.text(summary);
322
+ }
323
+ constructor() {
324
+ super(...arguments);
325
+ __runInitializers(this, _instanceExtraInitializers);
326
+ }
327
+ };
328
+ return TestBot = _classThis;
329
+ })();
330
+ const bot = new TestBot();
331
+ process.on('SIGINT', async () => {
332
+ log('signal', 'SIGINT — disconnecting');
333
+ await bot.disconnect();
334
+ process.exit(0);
335
+ });
336
+ process.on('uncaughtException', (err) => log('uncaughtException', err));
337
+ process.on('unhandledRejection', (err) => log('unhandledRejection', err));
338
+ bot.connect()
339
+ .then(() => log('boot', 'connect() resolved (session ready)'))
340
+ .catch((err) => {
341
+ log('boot', 'connect() failed', err);
342
+ process.exit(1);
343
+ });
344
+ //# sourceMappingURL=_index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"_index.js","sourceRoot":"","sources":["../../src/_index.ts"],"names":[],"mappings":"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"}
@@ -7,3 +7,5 @@ export { WhatsApp, default } from './lib/whatsapp/index.js';
7
7
  export type { IWhatsApp, DisconnectOptions, ReconnectOption } from './lib/whatsapp/index.js';
8
8
  export { FileSystemEngine, RedisEngine } from './lib/store/index.js';
9
9
  export type { Engine, RedisClient } from './lib/store/index.js';
10
+ export { default as Feed, TTL_MS as FEED_TTL_MS } from './lib/status/index.js';
11
+ export type { IFeedRaw, FeedType } from './lib/status/index.js';
@@ -5,4 +5,5 @@
5
5
  */
6
6
  export { WhatsApp, default } from './lib/whatsapp/index.js';
7
7
  export { FileSystemEngine, RedisEngine } from './lib/store/index.js';
8
+ export { default as Feed, TTL_MS as FEED_TTL_MS } from './lib/status/index.js';
8
9
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,gBAAgB,CAAC;AAGnD,OAAO,EAAE,gBAAgB,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,gBAAgB,CAAC;AAGnD,OAAO,EAAE,gBAAgB,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAG5D,OAAO,EAAE,OAAO,IAAI,IAAI,EAAE,MAAM,IAAI,WAAW,EAAE,MAAM,cAAc,CAAC"}
@@ -70,6 +70,10 @@ export declare class Chat {
70
70
  */
71
71
  export declare function chat(wa: WhatsApp): {
72
72
  new (raw: IChatRaw): {
73
+ /** @internal Cache TTL (15s) de la promesa de participants del grupo. Evita round-trips a `groupMetadata` y deduplica llamadas concurrentes. */
74
+ _members_cache: Promise<{
75
+ id: string;
76
+ }[]> | null;
73
77
  /** Re-hidrata metadata del chat desde el socket. / Re-hydrates chat metadata from the socket. */
74
78
  refresh(): Promise</*elided*/ any | null>;
75
79
  /** Fija/desfija el chat. / Pins or unpins the chat. */
@@ -88,7 +92,14 @@ export declare function chat(wa: WhatsApp): {
88
92
  clear(): Promise<boolean>;
89
93
  /** Elimina el chat y sus mensajes (remoto + local). / Deletes the chat and its messages (remote + local). */
90
94
  delete(): Promise<boolean>;
91
- /** Participantes del chat paginados (incluyéndome en grupos). / Chat participants paginated (self included in groups). */
95
+ /**
96
+ * Participantes del chat paginados (incluyéndome en grupos). Para grupos,
97
+ * el `groupMetadata` se memoiza en la instancia con TTL de 15s para evitar
98
+ * round-trips repetidos al socket.
99
+ * Chat participants paginated (self included in groups). For groups,
100
+ * `groupMetadata` is memoized on the instance with a 15s TTL to avoid
101
+ * repeated socket round-trips.
102
+ */
92
103
  members(offset?: number, limit?: number): Promise<InstanceType<typeof wa.Contact>[]>;
93
104
  /** Mensajes del chat paginados por mtime DESC. / Chat messages paginated by mtime DESC. */
94
105
  messages(offset?: number, limit?: number): Promise<Message[]>;
@@ -120,6 +131,10 @@ export declare function chat(wa: WhatsApp): {
120
131
  * Retrieves a chat by CID. If not persisted, creates it from the contact.
121
132
  */
122
133
  get(cid: string): Promise<{
134
+ /** @internal Cache TTL (15s) de la promesa de participants del grupo. Evita round-trips a `groupMetadata` y deduplica llamadas concurrentes. */
135
+ _members_cache: Promise<{
136
+ id: string;
137
+ }[]> | null;
123
138
  /** Re-hidrata metadata del chat desde el socket. / Re-hydrates chat metadata from the socket. */
124
139
  refresh(): Promise</*elided*/ any | null>;
125
140
  /** Fija/desfija el chat. / Pins or unpins the chat. */
@@ -138,7 +153,14 @@ export declare function chat(wa: WhatsApp): {
138
153
  clear(): Promise<boolean>;
139
154
  /** Elimina el chat y sus mensajes (remoto + local). / Deletes the chat and its messages (remote + local). */
140
155
  delete(): Promise<boolean>;
141
- /** Participantes del chat paginados (incluyéndome en grupos). / Chat participants paginated (self included in groups). */
156
+ /**
157
+ * Participantes del chat paginados (incluyéndome en grupos). Para grupos,
158
+ * el `groupMetadata` se memoiza en la instancia con TTL de 15s para evitar
159
+ * round-trips repetidos al socket.
160
+ * Chat participants paginated (self included in groups). For groups,
161
+ * `groupMetadata` is memoized on the instance with a 15s TTL to avoid
162
+ * repeated socket round-trips.
163
+ */
142
164
  members(offset?: number, limit?: number): Promise<InstanceType<typeof wa.Contact>[]>;
143
165
  /** Mensajes del chat paginados por mtime DESC. / Chat messages paginated by mtime DESC. */
144
166
  messages(offset?: number, limit?: number): Promise<Message[]>;
@@ -167,6 +189,10 @@ export declare function chat(wa: WhatsApp): {
167
189
  } | null>;
168
190
  /** Pagina los chats persistidos por mtime DESC. / Paginates persisted chats by mtime DESC. */
169
191
  list(offset?: number, limit?: number): Promise<{
192
+ /** @internal Cache TTL (15s) de la promesa de participants del grupo. Evita round-trips a `groupMetadata` y deduplica llamadas concurrentes. */
193
+ _members_cache: Promise<{
194
+ id: string;
195
+ }[]> | null;
170
196
  /** Re-hidrata metadata del chat desde el socket. / Re-hydrates chat metadata from the socket. */
171
197
  refresh(): Promise</*elided*/ any | null>;
172
198
  /** Fija/desfija el chat. / Pins or unpins the chat. */
@@ -185,7 +211,14 @@ export declare function chat(wa: WhatsApp): {
185
211
  clear(): Promise<boolean>;
186
212
  /** Elimina el chat y sus mensajes (remoto + local). / Deletes the chat and its messages (remote + local). */
187
213
  delete(): Promise<boolean>;
188
- /** Participantes del chat paginados (incluyéndome en grupos). / Chat participants paginated (self included in groups). */
214
+ /**
215
+ * Participantes del chat paginados (incluyéndome en grupos). Para grupos,
216
+ * el `groupMetadata` se memoiza en la instancia con TTL de 15s para evitar
217
+ * round-trips repetidos al socket.
218
+ * Chat participants paginated (self included in groups). For groups,
219
+ * `groupMetadata` is memoized on the instance with a 15s TTL to avoid
220
+ * repeated socket round-trips.
221
+ */
189
222
  members(offset?: number, limit?: number): Promise<InstanceType<typeof wa.Contact>[]>;
190
223
  /** Mensajes del chat paginados por mtime DESC. / Chat messages paginated by mtime DESC. */
191
224
  messages(offset?: number, limit?: number): Promise<Message[]>;
@@ -83,6 +83,11 @@ export function chat(wa) {
83
83
  : [];
84
84
  }
85
85
  return class _Chat extends Chat {
86
+ constructor() {
87
+ super(...arguments);
88
+ /** @internal Cache TTL (15s) de la promesa de participants del grupo. Evita round-trips a `groupMetadata` y deduplica llamadas concurrentes. */
89
+ this._members_cache = null;
90
+ }
86
91
  /**
87
92
  * Obtiene un chat por CID. Si no está persistido, lo crea a partir del contacto.
88
93
  * Retrieves a chat by CID. If not persisted, creates it from the contact.
@@ -282,7 +287,14 @@ export function chat(wa) {
282
287
  await wa.engine.unset(`/chat/${this.id}`);
283
288
  return true;
284
289
  }
285
- /** Participantes del chat paginados (incluyéndome en grupos). / Chat participants paginated (self included in groups). */
290
+ /**
291
+ * Participantes del chat paginados (incluyéndome en grupos). Para grupos,
292
+ * el `groupMetadata` se memoiza en la instancia con TTL de 15s para evitar
293
+ * round-trips repetidos al socket.
294
+ * Chat participants paginated (self included in groups). For groups,
295
+ * `groupMetadata` is memoized on the instance with a 15s TTL to avoid
296
+ * repeated socket round-trips.
297
+ */
286
298
  async members(offset = 0, limit = 50) {
287
299
  const result = [];
288
300
  if (this.type !== 'group') {
@@ -295,8 +307,13 @@ export function chat(wa) {
295
307
  }
296
308
  else if (wa._socket) {
297
309
  try {
298
- const meta = await wa._socket.groupMetadata(this.id);
299
- const slice = meta.participants.slice(offset, offset + limit);
310
+ const socket = wa._socket;
311
+ const participants = await (this._members_cache ??= (async () => {
312
+ const meta = await socket.groupMetadata(this.id);
313
+ setTimeout(() => { this._members_cache = null; }, 15_000);
314
+ return meta.participants;
315
+ })());
316
+ const slice = participants.slice(offset, offset + limit);
300
317
  for (const p of slice) {
301
318
  const existing = await wa.Contact.get(p.id);
302
319
  if (existing) {
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/lib/chat/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/lib/chat/index.ts"],"names":[],"mappings":"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"}