@arcaelas/whatsapp 3.1.1 → 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.
- package/build/cjs/_index.d.ts +14 -0
- package/build/cjs/_index.js +346 -0
- package/build/cjs/_index.js.map +1 -0
- package/build/cjs/decorators.d.ts +9 -0
- package/build/cjs/decorators.js +26 -0
- package/build/cjs/decorators.js.map +1 -0
- package/build/cjs/index.d.ts +11 -0
- package/build/cjs/index.js +21 -0
- package/build/cjs/index.js.map +1 -0
- package/build/cjs/lib/bot/decorator.d.ts +77 -0
- package/build/cjs/lib/bot/decorator.js +219 -0
- package/build/cjs/lib/bot/decorator.js.map +1 -0
- package/build/cjs/lib/bot/decorators.d.ts +113 -0
- package/build/cjs/lib/bot/decorators.js +253 -0
- package/build/cjs/lib/bot/decorators.js.map +1 -0
- package/build/cjs/lib/bot/index.d.ts +3 -0
- package/build/cjs/lib/bot/index.js +20 -0
- package/build/cjs/lib/bot/index.js.map +1 -0
- package/build/cjs/lib/chat/index.d.ts +260 -0
- package/build/cjs/lib/chat/index.js +341 -0
- package/build/cjs/lib/chat/index.js.map +1 -0
- package/build/cjs/lib/contact/index.d.ts +203 -0
- package/build/cjs/lib/contact/index.js +226 -0
- package/build/cjs/lib/contact/index.js.map +1 -0
- package/build/cjs/lib/message/index.d.ts +277 -0
- package/build/cjs/lib/message/index.js +767 -0
- package/build/cjs/lib/message/index.js.map +1 -0
- package/build/cjs/lib/status/index.d.ts +85 -0
- package/build/cjs/lib/status/index.js +137 -0
- package/build/cjs/lib/status/index.js.map +1 -0
- package/build/cjs/lib/store/engine/index.d.ts +34 -0
- package/build/cjs/lib/store/engine/index.js +13 -0
- package/build/cjs/lib/store/engine/index.js.map +1 -0
- package/build/cjs/lib/store/engine/lib/file_system/index.d.ts +56 -0
- package/build/cjs/lib/store/engine/lib/file_system/index.js +160 -0
- package/build/cjs/lib/store/engine/lib/file_system/index.js.map +1 -0
- package/build/cjs/lib/store/engine/lib/redis/index.d.ts +82 -0
- package/build/cjs/lib/store/engine/lib/redis/index.js +132 -0
- package/build/cjs/lib/store/engine/lib/redis/index.js.map +1 -0
- package/build/cjs/lib/store/index.d.ts +22 -0
- package/build/cjs/lib/store/index.js +38 -0
- package/build/cjs/lib/store/index.js.map +1 -0
- package/build/cjs/lib/whatsapp/index.d.ts +185 -0
- package/build/cjs/lib/whatsapp/index.js +870 -0
- package/build/cjs/lib/whatsapp/index.js.map +1 -0
- package/build/cjs/package.json +1 -0
- package/build/esm/_index.d.ts +14 -0
- package/build/esm/_index.js +344 -0
- package/build/esm/_index.js.map +1 -0
- package/build/esm/decorators.d.ts +9 -0
- package/build/esm/decorators.js +9 -0
- package/build/esm/decorators.js.map +1 -0
- package/build/esm/index.d.ts +11 -0
- package/build/esm/index.js +9 -0
- package/build/esm/index.js.map +1 -0
- package/build/esm/lib/bot/decorator.d.ts +77 -0
- package/build/esm/lib/bot/decorator.js +210 -0
- package/build/esm/lib/bot/decorator.js.map +1 -0
- package/build/esm/lib/bot/decorators.d.ts +113 -0
- package/build/esm/lib/bot/decorators.js +242 -0
- package/build/esm/lib/bot/decorators.js.map +1 -0
- package/build/esm/lib/bot/index.d.ts +3 -0
- package/build/esm/lib/bot/index.js +3 -0
- package/build/esm/lib/bot/index.js.map +1 -0
- package/build/esm/lib/chat/index.d.ts +260 -0
- package/build/esm/lib/chat/index.js +336 -0
- package/build/esm/lib/chat/index.js.map +1 -0
- package/build/esm/lib/contact/index.d.ts +203 -0
- package/build/esm/lib/contact/index.js +221 -0
- package/build/esm/lib/contact/index.js.map +1 -0
- package/build/esm/lib/message/index.d.ts +277 -0
- package/build/esm/lib/message/index.js +755 -0
- package/build/esm/lib/message/index.js.map +1 -0
- package/build/esm/lib/status/index.d.ts +85 -0
- package/build/esm/lib/status/index.js +133 -0
- package/build/esm/lib/status/index.js.map +1 -0
- package/build/esm/lib/store/engine/index.d.ts +34 -0
- package/build/esm/lib/store/engine/index.js +8 -0
- package/build/esm/lib/store/engine/index.js.map +1 -0
- package/build/esm/lib/store/engine/lib/file_system/index.d.ts +56 -0
- package/build/esm/lib/store/engine/lib/file_system/index.js +156 -0
- package/build/esm/lib/store/engine/lib/file_system/index.js.map +1 -0
- package/build/esm/lib/store/engine/lib/redis/index.d.ts +82 -0
- package/build/esm/lib/store/engine/lib/redis/index.js +128 -0
- package/build/esm/lib/store/engine/lib/redis/index.js.map +1 -0
- package/build/esm/lib/store/index.d.ts +22 -0
- package/build/esm/lib/store/index.js +31 -0
- package/build/esm/lib/store/index.js.map +1 -0
- package/build/esm/lib/whatsapp/index.d.ts +185 -0
- package/build/esm/lib/whatsapp/index.js +830 -0
- package/build/esm/lib/whatsapp/index.js.map +1 -0
- package/build/esm/package.json +1 -0
- package/package.json +1 -1
|
@@ -0,0 +1,14 @@
|
|
|
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
|
+
export {};
|
|
@@ -0,0 +1,346 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* @file _index.ts
|
|
4
|
+
* @description Bot de prueba manual de @arcaelas/whatsapp v3. Engancha cada evento del
|
|
5
|
+
* cliente con un console.log para inspeccionar el ciclo de vida real. No se publica
|
|
6
|
+
* (archivo prefijado con underscore — excluir de build cuando se versione).
|
|
7
|
+
*
|
|
8
|
+
* Ejecutar:
|
|
9
|
+
* npx tsx src/_index.ts
|
|
10
|
+
*
|
|
11
|
+
* Variables de entorno:
|
|
12
|
+
* PHONE → número (solo dígitos) para pairing por PIN. Si falta, se usa QR.
|
|
13
|
+
* SESSION → carpeta de sesión (default: ./.session)
|
|
14
|
+
*/
|
|
15
|
+
var __runInitializers = (this && this.__runInitializers) || function (thisArg, initializers, value) {
|
|
16
|
+
var useValue = arguments.length > 2;
|
|
17
|
+
for (var i = 0; i < initializers.length; i++) {
|
|
18
|
+
value = useValue ? initializers[i].call(thisArg, value) : initializers[i].call(thisArg);
|
|
19
|
+
}
|
|
20
|
+
return useValue ? value : void 0;
|
|
21
|
+
};
|
|
22
|
+
var __esDecorate = (this && this.__esDecorate) || function (ctor, descriptorIn, decorators, contextIn, initializers, extraInitializers) {
|
|
23
|
+
function accept(f) { if (f !== void 0 && typeof f !== "function") throw new TypeError("Function expected"); return f; }
|
|
24
|
+
var kind = contextIn.kind, key = kind === "getter" ? "get" : kind === "setter" ? "set" : "value";
|
|
25
|
+
var target = !descriptorIn && ctor ? contextIn["static"] ? ctor : ctor.prototype : null;
|
|
26
|
+
var descriptor = descriptorIn || (target ? Object.getOwnPropertyDescriptor(target, contextIn.name) : {});
|
|
27
|
+
var _, done = false;
|
|
28
|
+
for (var i = decorators.length - 1; i >= 0; i--) {
|
|
29
|
+
var context = {};
|
|
30
|
+
for (var p in contextIn) context[p] = p === "access" ? {} : contextIn[p];
|
|
31
|
+
for (var p in contextIn.access) context.access[p] = contextIn.access[p];
|
|
32
|
+
context.addInitializer = function (f) { if (done) throw new TypeError("Cannot add initializers after decoration has completed"); extraInitializers.push(accept(f || null)); };
|
|
33
|
+
var result = (0, decorators[i])(kind === "accessor" ? { get: descriptor.get, set: descriptor.set } : descriptor[key], context);
|
|
34
|
+
if (kind === "accessor") {
|
|
35
|
+
if (result === void 0) continue;
|
|
36
|
+
if (result === null || typeof result !== "object") throw new TypeError("Object expected");
|
|
37
|
+
if (_ = accept(result.get)) descriptor.get = _;
|
|
38
|
+
if (_ = accept(result.set)) descriptor.set = _;
|
|
39
|
+
if (_ = accept(result.init)) initializers.unshift(_);
|
|
40
|
+
}
|
|
41
|
+
else if (_ = accept(result)) {
|
|
42
|
+
if (kind === "field") initializers.unshift(_);
|
|
43
|
+
else descriptor[key] = _;
|
|
44
|
+
}
|
|
45
|
+
}
|
|
46
|
+
if (target) Object.defineProperty(target, contextIn.name, descriptor);
|
|
47
|
+
done = true;
|
|
48
|
+
};
|
|
49
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
50
|
+
const promises_1 = require("node:fs/promises");
|
|
51
|
+
const node_path_1 = require("node:path");
|
|
52
|
+
const store_1 = require("./lib/store");
|
|
53
|
+
const bot_1 = require("./lib/bot");
|
|
54
|
+
const SESSION_DIR = process.env.SESSION ?? (0, node_path_1.join)(__dirname, '..', '.session');
|
|
55
|
+
const PHONE = process.env.PHONE;
|
|
56
|
+
const QR_FILE = (0, node_path_1.join)(__dirname, '..', '.session.qr.png');
|
|
57
|
+
const log = (event, ...rest) => console.log(`[${new Date().toISOString()}] ${event}`, ...rest);
|
|
58
|
+
let TestBot = (() => {
|
|
59
|
+
let _classDecorators = [(0, bot_1.Bot)({
|
|
60
|
+
engine: new store_1.FileSystemEngine(SESSION_DIR),
|
|
61
|
+
phone: PHONE,
|
|
62
|
+
reconnect: true,
|
|
63
|
+
autoclean: true,
|
|
64
|
+
})];
|
|
65
|
+
let _classDescriptor;
|
|
66
|
+
let _classExtraInitializers = [];
|
|
67
|
+
let _classThis;
|
|
68
|
+
let _classSuper = bot_1.WhatsAppBot;
|
|
69
|
+
let _instanceExtraInitializers = [];
|
|
70
|
+
let _on_pair_decorators;
|
|
71
|
+
let _on_connected_decorators;
|
|
72
|
+
let _on_disconnected_decorators;
|
|
73
|
+
let _heartbeat_decorators;
|
|
74
|
+
let _on_contact_created_decorators;
|
|
75
|
+
let _on_contact_updated_decorators;
|
|
76
|
+
let _on_contact_deleted_decorators;
|
|
77
|
+
let _on_chat_created_decorators;
|
|
78
|
+
let _on_chat_deleted_decorators;
|
|
79
|
+
let _on_chat_pinned_decorators;
|
|
80
|
+
let _on_chat_unpinned_decorators;
|
|
81
|
+
let _on_chat_archived_decorators;
|
|
82
|
+
let _on_chat_unarchived_decorators;
|
|
83
|
+
let _on_chat_muted_decorators;
|
|
84
|
+
let _on_chat_unmuted_decorators;
|
|
85
|
+
let _on_message_created_decorators;
|
|
86
|
+
let _on_message_updated_decorators;
|
|
87
|
+
let _on_message_deleted_decorators;
|
|
88
|
+
let _on_message_reacted_decorators;
|
|
89
|
+
let _on_msg_starred_decorators;
|
|
90
|
+
let _on_msg_unstarred_decorators;
|
|
91
|
+
let _on_msg_forwarded_decorators;
|
|
92
|
+
let _on_msg_seen_decorators;
|
|
93
|
+
let _on_feed_created_decorators;
|
|
94
|
+
let _on_feed_updated_decorators;
|
|
95
|
+
let _on_feed_deleted_decorators;
|
|
96
|
+
let _cmd_ping_decorators;
|
|
97
|
+
let _cmd_echo_decorators;
|
|
98
|
+
let _cmd_info_decorators;
|
|
99
|
+
let _cmd_poll_decorators;
|
|
100
|
+
let _cmd_vote_decorators;
|
|
101
|
+
let _cmd_polls_decorators;
|
|
102
|
+
var TestBot = class extends _classSuper {
|
|
103
|
+
static { _classThis = this; }
|
|
104
|
+
static {
|
|
105
|
+
const _metadata = typeof Symbol === "function" && Symbol.metadata ? Object.create(_classSuper[Symbol.metadata] ?? null) : void 0;
|
|
106
|
+
_on_pair_decorators = [(0, bot_1.pair)()];
|
|
107
|
+
_on_connected_decorators = [(0, bot_1.connect)()];
|
|
108
|
+
_on_disconnected_decorators = [(0, bot_1.disconnect)()];
|
|
109
|
+
_heartbeat_decorators = [(0, bot_1.every)(60_000)];
|
|
110
|
+
_on_contact_created_decorators = [(0, bot_1.on)('contact:created')];
|
|
111
|
+
_on_contact_updated_decorators = [(0, bot_1.on)('contact:updated')];
|
|
112
|
+
_on_contact_deleted_decorators = [(0, bot_1.on)('contact:deleted')];
|
|
113
|
+
_on_chat_created_decorators = [(0, bot_1.on)('chat:created')];
|
|
114
|
+
_on_chat_deleted_decorators = [(0, bot_1.on)('chat:deleted')];
|
|
115
|
+
_on_chat_pinned_decorators = [(0, bot_1.on)('chat:pinned')];
|
|
116
|
+
_on_chat_unpinned_decorators = [(0, bot_1.on)('chat:unpinned')];
|
|
117
|
+
_on_chat_archived_decorators = [(0, bot_1.on)('chat:archived')];
|
|
118
|
+
_on_chat_unarchived_decorators = [(0, bot_1.on)('chat:unarchived')];
|
|
119
|
+
_on_chat_muted_decorators = [(0, bot_1.on)('chat:muted')];
|
|
120
|
+
_on_chat_unmuted_decorators = [(0, bot_1.on)('chat:unmuted')];
|
|
121
|
+
_on_message_created_decorators = [(0, bot_1.on)('message:created')];
|
|
122
|
+
_on_message_updated_decorators = [(0, bot_1.on)('message:updated')];
|
|
123
|
+
_on_message_deleted_decorators = [(0, bot_1.on)('message:deleted')];
|
|
124
|
+
_on_message_reacted_decorators = [(0, bot_1.on)('message:reacted')];
|
|
125
|
+
_on_msg_starred_decorators = [(0, bot_1.on)('message:starred')];
|
|
126
|
+
_on_msg_unstarred_decorators = [(0, bot_1.on)('message:unstarred')];
|
|
127
|
+
_on_msg_forwarded_decorators = [(0, bot_1.on)('message:forwarded')];
|
|
128
|
+
_on_msg_seen_decorators = [(0, bot_1.on)('message:seen')];
|
|
129
|
+
_on_feed_created_decorators = [(0, bot_1.on)('feed:created')];
|
|
130
|
+
_on_feed_updated_decorators = [(0, bot_1.on)('feed:updated')];
|
|
131
|
+
_on_feed_deleted_decorators = [(0, bot_1.on)('feed:deleted')];
|
|
132
|
+
_cmd_ping_decorators = [(0, bot_1.command)('!ping')];
|
|
133
|
+
_cmd_echo_decorators = [(0, bot_1.command)('!echo')];
|
|
134
|
+
_cmd_info_decorators = [(0, bot_1.command)(/^!info\b/)];
|
|
135
|
+
_cmd_poll_decorators = [(0, bot_1.command)(/^!poll\s+(.+)/s)];
|
|
136
|
+
_cmd_vote_decorators = [(0, bot_1.command)(/^!vote\s+(.+)/)];
|
|
137
|
+
_cmd_polls_decorators = [(0, bot_1.command)('!polls')];
|
|
138
|
+
__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);
|
|
139
|
+
__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);
|
|
140
|
+
__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);
|
|
141
|
+
__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);
|
|
142
|
+
__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);
|
|
143
|
+
__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);
|
|
144
|
+
__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);
|
|
145
|
+
__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);
|
|
146
|
+
__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);
|
|
147
|
+
__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);
|
|
148
|
+
__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);
|
|
149
|
+
__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);
|
|
150
|
+
__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);
|
|
151
|
+
__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);
|
|
152
|
+
__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);
|
|
153
|
+
__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);
|
|
154
|
+
__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);
|
|
155
|
+
__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);
|
|
156
|
+
__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);
|
|
157
|
+
__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);
|
|
158
|
+
__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);
|
|
159
|
+
__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);
|
|
160
|
+
__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);
|
|
161
|
+
__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);
|
|
162
|
+
__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);
|
|
163
|
+
__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);
|
|
164
|
+
__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);
|
|
165
|
+
__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);
|
|
166
|
+
__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);
|
|
167
|
+
__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);
|
|
168
|
+
__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);
|
|
169
|
+
__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);
|
|
170
|
+
__esDecorate(null, _classDescriptor = { value: _classThis }, _classDecorators, { kind: "class", name: _classThis.name, metadata: _metadata }, null, _classExtraInitializers);
|
|
171
|
+
TestBot = _classThis = _classDescriptor.value;
|
|
172
|
+
if (_metadata) Object.defineProperty(_classThis, Symbol.metadata, { enumerable: true, configurable: true, writable: true, value: _metadata });
|
|
173
|
+
__runInitializers(_classThis, _classExtraInitializers);
|
|
174
|
+
}
|
|
175
|
+
async on_pair(auth) {
|
|
176
|
+
if (typeof auth === 'string') {
|
|
177
|
+
log('pair:pin', auth);
|
|
178
|
+
}
|
|
179
|
+
else {
|
|
180
|
+
await (0, promises_1.writeFile)(QR_FILE, auth);
|
|
181
|
+
log('pair:qr', `wrote PNG → ${QR_FILE} (open it and scan)`);
|
|
182
|
+
}
|
|
183
|
+
}
|
|
184
|
+
on_connected() {
|
|
185
|
+
log('connected', { socket_user: this._socket?.user?.id ?? null });
|
|
186
|
+
}
|
|
187
|
+
on_disconnected() {
|
|
188
|
+
log('disconnected');
|
|
189
|
+
}
|
|
190
|
+
heartbeat() {
|
|
191
|
+
log('heartbeat', { connected: this._socket !== null });
|
|
192
|
+
}
|
|
193
|
+
on_contact_created(c) {
|
|
194
|
+
log('contact:created', { id: c.id, name: c.name ?? null });
|
|
195
|
+
}
|
|
196
|
+
on_contact_updated(c) {
|
|
197
|
+
log('contact:updated', { id: c.id, name: c.name ?? null });
|
|
198
|
+
}
|
|
199
|
+
on_contact_deleted(c) {
|
|
200
|
+
log('contact:deleted', { id: c.id });
|
|
201
|
+
}
|
|
202
|
+
on_chat_created(chat) {
|
|
203
|
+
log('chat:created', { id: chat.id, name: chat.name ?? null });
|
|
204
|
+
}
|
|
205
|
+
on_chat_deleted(chat) {
|
|
206
|
+
log('chat:deleted', { id: chat.id });
|
|
207
|
+
}
|
|
208
|
+
on_chat_pinned(chat) { log('chat:pinned', chat.id); }
|
|
209
|
+
on_chat_unpinned(chat) { log('chat:unpinned', chat.id); }
|
|
210
|
+
on_chat_archived(chat) { log('chat:archived', chat.id); }
|
|
211
|
+
on_chat_unarchived(chat) { log('chat:unarchived', chat.id); }
|
|
212
|
+
on_chat_muted(chat) { log('chat:muted', chat.id); }
|
|
213
|
+
on_chat_unmuted(chat) { log('chat:unmuted', chat.id); }
|
|
214
|
+
on_message_created(msg, chat) {
|
|
215
|
+
const base = {
|
|
216
|
+
id: msg.id,
|
|
217
|
+
chat: chat.name ?? chat.id,
|
|
218
|
+
from: msg.from,
|
|
219
|
+
me: msg.me,
|
|
220
|
+
type: msg.type,
|
|
221
|
+
mime: msg.mime,
|
|
222
|
+
caption: msg.caption,
|
|
223
|
+
};
|
|
224
|
+
if (msg.type === 'poll') {
|
|
225
|
+
const poll = msg;
|
|
226
|
+
log('message:created', { ...base, multiple: poll.multiple, options: poll.options });
|
|
227
|
+
}
|
|
228
|
+
else {
|
|
229
|
+
log('message:created', base);
|
|
230
|
+
}
|
|
231
|
+
}
|
|
232
|
+
on_message_updated(msg) {
|
|
233
|
+
const base = { id: msg.id, cid: msg.cid, edited: msg.edited, caption: msg.caption };
|
|
234
|
+
if (msg.type === 'poll') {
|
|
235
|
+
const poll = msg;
|
|
236
|
+
log('message:updated', { ...base, multiple: poll.multiple, options: poll.options });
|
|
237
|
+
}
|
|
238
|
+
else {
|
|
239
|
+
log('message:updated', base);
|
|
240
|
+
}
|
|
241
|
+
}
|
|
242
|
+
on_message_deleted(msg) {
|
|
243
|
+
log('message:deleted', { id: msg.id, cid: msg.cid });
|
|
244
|
+
}
|
|
245
|
+
on_message_reacted(msg, _chat, emoji) {
|
|
246
|
+
log('message:reacted', { id: msg.id, cid: msg.cid, emoji });
|
|
247
|
+
}
|
|
248
|
+
on_msg_starred(msg) { log('message:starred', msg.id); }
|
|
249
|
+
on_msg_unstarred(msg) { log('message:unstarred', msg.id); }
|
|
250
|
+
on_msg_forwarded(msg) { log('message:forwarded', msg.id); }
|
|
251
|
+
on_msg_seen(msg) { log('message:seen', msg.id); }
|
|
252
|
+
async on_feed_created(feed) {
|
|
253
|
+
const author = await feed.author();
|
|
254
|
+
log('feed:created', {
|
|
255
|
+
id: feed.id,
|
|
256
|
+
type: feed.type,
|
|
257
|
+
viewed: feed.viewed,
|
|
258
|
+
caption: feed.caption,
|
|
259
|
+
author: { id: author.id, name: author.name ?? null },
|
|
260
|
+
});
|
|
261
|
+
}
|
|
262
|
+
on_feed_updated(feed) {
|
|
263
|
+
log('feed:updated', { id: feed.id, viewed: feed.viewed });
|
|
264
|
+
}
|
|
265
|
+
on_feed_deleted(feed) {
|
|
266
|
+
log('feed:deleted', { id: feed.id });
|
|
267
|
+
}
|
|
268
|
+
async cmd_ping(msg) {
|
|
269
|
+
log('command:!ping');
|
|
270
|
+
await msg.text('pong');
|
|
271
|
+
}
|
|
272
|
+
async cmd_echo(msg, _chat, args) {
|
|
273
|
+
log('command:!echo', args);
|
|
274
|
+
await msg.text(args.length > 0 ? args.join(' ') : '(empty)');
|
|
275
|
+
}
|
|
276
|
+
async cmd_info(msg) {
|
|
277
|
+
log('command:!info', { id: msg.id, cid: msg.cid, from: msg.from, type: msg.type });
|
|
278
|
+
await msg.text(`id=${msg.id}\ncid=${msg.cid}\nfrom=${msg.from}\ntype=${msg.type}`);
|
|
279
|
+
}
|
|
280
|
+
async cmd_poll(msg, _chat, [rest]) {
|
|
281
|
+
const multi_prefix = /^multi:\s*/i;
|
|
282
|
+
const multiple = multi_prefix.test(rest);
|
|
283
|
+
const body = rest.replace(multi_prefix, '');
|
|
284
|
+
const parts = body.split('|').map((s) => s.trim()).filter((s) => s.length > 0);
|
|
285
|
+
const [question, ...options] = parts;
|
|
286
|
+
log('command:!poll', { multiple, question, options });
|
|
287
|
+
if (!question || options.length < 2) {
|
|
288
|
+
await msg.text('Uso: !poll [multi:] Pregunta? | Opcion1 | Opcion2 [| Opcion3 ...]');
|
|
289
|
+
return;
|
|
290
|
+
}
|
|
291
|
+
const sent = await msg.poll({ content: question, options: options.map((content) => ({ content })) }, { multiple });
|
|
292
|
+
log(' poll sent:', { id: sent?.id ?? null, multiple: sent?.multiple ?? null });
|
|
293
|
+
}
|
|
294
|
+
async cmd_vote(msg, chat, [rest]) {
|
|
295
|
+
const indices = rest.split(',').map((s) => parseInt(s.trim(), 10)).filter((n) => Number.isFinite(n));
|
|
296
|
+
log('command:!vote', { chat: chat.id, indices });
|
|
297
|
+
if (indices.length === 0) {
|
|
298
|
+
await msg.text('Uso: !vote 0 o !vote 0,2');
|
|
299
|
+
return;
|
|
300
|
+
}
|
|
301
|
+
const messages = await this.Message.list(chat.id, 0, 50);
|
|
302
|
+
const last_poll = messages.find((m) => m.type === 'poll');
|
|
303
|
+
if (!last_poll) {
|
|
304
|
+
await msg.text('No hay polls en este chat');
|
|
305
|
+
return;
|
|
306
|
+
}
|
|
307
|
+
const ok = await last_poll.select(indices.length === 1 ? indices[0] : indices);
|
|
308
|
+
log(' vote result:', { poll: last_poll.id, ok });
|
|
309
|
+
await msg.text(`vote ${ok ? 'ok' : 'failed'} on ${last_poll.id}`);
|
|
310
|
+
}
|
|
311
|
+
async cmd_polls(msg, chat) {
|
|
312
|
+
const messages = await this.Message.list(chat.id, 0, 50);
|
|
313
|
+
const polls = messages.filter((m) => m.type === 'poll');
|
|
314
|
+
log('command:!polls', { count: polls.length });
|
|
315
|
+
if (polls.length === 0) {
|
|
316
|
+
await msg.text('No hay polls en este chat');
|
|
317
|
+
return;
|
|
318
|
+
}
|
|
319
|
+
const summary = polls.map((p) => {
|
|
320
|
+
const opts = p.options.map((o, i) => ` ${i}. ${o.content} [${o.count}]`).join('\n');
|
|
321
|
+
return `${p.id} (${p.multiple ? 'multi' : 'single'}): ${p.caption}\n${opts}`;
|
|
322
|
+
}).join('\n\n');
|
|
323
|
+
await msg.text(summary);
|
|
324
|
+
}
|
|
325
|
+
constructor() {
|
|
326
|
+
super(...arguments);
|
|
327
|
+
__runInitializers(this, _instanceExtraInitializers);
|
|
328
|
+
}
|
|
329
|
+
};
|
|
330
|
+
return TestBot = _classThis;
|
|
331
|
+
})();
|
|
332
|
+
const bot = new TestBot();
|
|
333
|
+
process.on('SIGINT', async () => {
|
|
334
|
+
log('signal', 'SIGINT — disconnecting');
|
|
335
|
+
await bot.disconnect();
|
|
336
|
+
process.exit(0);
|
|
337
|
+
});
|
|
338
|
+
process.on('uncaughtException', (err) => log('uncaughtException', err));
|
|
339
|
+
process.on('unhandledRejection', (err) => log('unhandledRejection', err));
|
|
340
|
+
bot.connect()
|
|
341
|
+
.then(() => log('boot', 'connect() resolved (session ready)'))
|
|
342
|
+
.catch((err) => {
|
|
343
|
+
log('boot', 'connect() failed', err);
|
|
344
|
+
process.exit(1);
|
|
345
|
+
});
|
|
346
|
+
//# sourceMappingURL=_index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"_index.js","sourceRoot":"","sources":["../../src/_index.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @file decorators.ts
|
|
3
|
+
* @description Sub-entry `@arcaelas/whatsapp/decorators` — API declarativa basada
|
|
4
|
+
* en decoradores Stage 3 para construir bots sobre el cliente WhatsApp.
|
|
5
|
+
* Sub-entry `@arcaelas/whatsapp/decorators` — Stage 3 decorator-based declarative
|
|
6
|
+
* API to build bots on top of the WhatsApp client.
|
|
7
|
+
*/
|
|
8
|
+
export { WhatsAppBot, Bot, on, guard, command, from, once, connect, disconnect, every, pipe, pair, HANDLERS, decorator, } from './lib/bot';
|
|
9
|
+
export type { HandlerMeta, BotSchema, WorkflowStep } from './lib/bot';
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* @file decorators.ts
|
|
4
|
+
* @description Sub-entry `@arcaelas/whatsapp/decorators` — API declarativa basada
|
|
5
|
+
* en decoradores Stage 3 para construir bots sobre el cliente WhatsApp.
|
|
6
|
+
* Sub-entry `@arcaelas/whatsapp/decorators` — Stage 3 decorator-based declarative
|
|
7
|
+
* API to build bots on top of the WhatsApp client.
|
|
8
|
+
*/
|
|
9
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
10
|
+
exports.decorator = exports.HANDLERS = exports.pair = exports.pipe = exports.every = exports.disconnect = exports.connect = exports.once = exports.from = exports.command = exports.guard = exports.on = exports.Bot = exports.WhatsAppBot = void 0;
|
|
11
|
+
var bot_1 = require("./lib/bot");
|
|
12
|
+
Object.defineProperty(exports, "WhatsAppBot", { enumerable: true, get: function () { return bot_1.WhatsAppBot; } });
|
|
13
|
+
Object.defineProperty(exports, "Bot", { enumerable: true, get: function () { return bot_1.Bot; } });
|
|
14
|
+
Object.defineProperty(exports, "on", { enumerable: true, get: function () { return bot_1.on; } });
|
|
15
|
+
Object.defineProperty(exports, "guard", { enumerable: true, get: function () { return bot_1.guard; } });
|
|
16
|
+
Object.defineProperty(exports, "command", { enumerable: true, get: function () { return bot_1.command; } });
|
|
17
|
+
Object.defineProperty(exports, "from", { enumerable: true, get: function () { return bot_1.from; } });
|
|
18
|
+
Object.defineProperty(exports, "once", { enumerable: true, get: function () { return bot_1.once; } });
|
|
19
|
+
Object.defineProperty(exports, "connect", { enumerable: true, get: function () { return bot_1.connect; } });
|
|
20
|
+
Object.defineProperty(exports, "disconnect", { enumerable: true, get: function () { return bot_1.disconnect; } });
|
|
21
|
+
Object.defineProperty(exports, "every", { enumerable: true, get: function () { return bot_1.every; } });
|
|
22
|
+
Object.defineProperty(exports, "pipe", { enumerable: true, get: function () { return bot_1.pipe; } });
|
|
23
|
+
Object.defineProperty(exports, "pair", { enumerable: true, get: function () { return bot_1.pair; } });
|
|
24
|
+
Object.defineProperty(exports, "HANDLERS", { enumerable: true, get: function () { return bot_1.HANDLERS; } });
|
|
25
|
+
Object.defineProperty(exports, "decorator", { enumerable: true, get: function () { return bot_1.decorator; } });
|
|
26
|
+
//# sourceMappingURL=decorators.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"decorators.js","sourceRoot":"","sources":["../../src/decorators.ts"],"names":[],"mappings":";AAAA;;;;;;GAMG;;;AAEH,iCAemB;AAdf,kGAAA,WAAW,OAAA;AACX,0FAAA,GAAG,OAAA;AACH,yFAAA,EAAE,OAAA;AACF,4FAAA,KAAK,OAAA;AACL,8FAAA,OAAO,OAAA;AACP,2FAAA,IAAI,OAAA;AACJ,2FAAA,IAAI,OAAA;AACJ,8FAAA,OAAO,OAAA;AACP,iGAAA,UAAU,OAAA;AACV,4FAAA,KAAK,OAAA;AACL,2FAAA,IAAI,OAAA;AACJ,2FAAA,IAAI,OAAA;AACJ,+FAAA,QAAQ,OAAA;AACR,gGAAA,SAAS,OAAA"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @file index.ts
|
|
3
|
+
* @description Punto de entrada público de la librería @arcaelas/whatsapp.
|
|
4
|
+
* Public entry point of the @arcaelas/whatsapp library.
|
|
5
|
+
*/
|
|
6
|
+
export { WhatsApp, default } from './lib/whatsapp';
|
|
7
|
+
export type { IWhatsApp, DisconnectOptions, ReconnectOption } from './lib/whatsapp';
|
|
8
|
+
export { FileSystemEngine, RedisEngine } from './lib/store';
|
|
9
|
+
export type { Engine, RedisClient } from './lib/store';
|
|
10
|
+
export { default as Feed, TTL_MS as FEED_TTL_MS } from './lib/status';
|
|
11
|
+
export type { IFeedRaw, FeedType } from './lib/status';
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* @file index.ts
|
|
4
|
+
* @description Punto de entrada público de la librería @arcaelas/whatsapp.
|
|
5
|
+
* Public entry point of the @arcaelas/whatsapp library.
|
|
6
|
+
*/
|
|
7
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
8
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
9
|
+
};
|
|
10
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
11
|
+
exports.FEED_TTL_MS = exports.Feed = exports.RedisEngine = exports.FileSystemEngine = exports.default = exports.WhatsApp = void 0;
|
|
12
|
+
var whatsapp_1 = require("./lib/whatsapp");
|
|
13
|
+
Object.defineProperty(exports, "WhatsApp", { enumerable: true, get: function () { return whatsapp_1.WhatsApp; } });
|
|
14
|
+
Object.defineProperty(exports, "default", { enumerable: true, get: function () { return __importDefault(whatsapp_1).default; } });
|
|
15
|
+
var store_1 = require("./lib/store");
|
|
16
|
+
Object.defineProperty(exports, "FileSystemEngine", { enumerable: true, get: function () { return store_1.FileSystemEngine; } });
|
|
17
|
+
Object.defineProperty(exports, "RedisEngine", { enumerable: true, get: function () { return store_1.RedisEngine; } });
|
|
18
|
+
var status_1 = require("./lib/status");
|
|
19
|
+
Object.defineProperty(exports, "Feed", { enumerable: true, get: function () { return __importDefault(status_1).default; } });
|
|
20
|
+
Object.defineProperty(exports, "FEED_TTL_MS", { enumerable: true, get: function () { return status_1.TTL_MS; } });
|
|
21
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":";AAAA;;;;GAIG;;;;;;AAEH,2CAAmD;AAA1C,oGAAA,QAAQ,OAAA;AAAE,oHAAA,OAAO,OAAA;AAG1B,qCAA4D;AAAnD,yGAAA,gBAAgB,OAAA;AAAE,oGAAA,WAAW,OAAA;AAGtC,uCAAsE;AAA7D,+GAAA,OAAO,OAAQ;AAAE,qGAAA,MAAM,OAAe"}
|
|
@@ -0,0 +1,77 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @file playground/bot/decorator.ts
|
|
3
|
+
* @description Infraestructura base de decoradores Stage 3 sobre WhatsApp.
|
|
4
|
+
* Base infrastructure for Stage 3 decorators over WhatsApp.
|
|
5
|
+
*/
|
|
6
|
+
import WhatsApp, { type IWhatsApp } from '../../lib/whatsapp';
|
|
7
|
+
export declare const HANDLERS: unique symbol;
|
|
8
|
+
export interface HandlerMeta {
|
|
9
|
+
method: string;
|
|
10
|
+
events: string[];
|
|
11
|
+
guards: Array<(...args: unknown[]) => boolean | Promise<boolean>>;
|
|
12
|
+
transforms: Array<(args: unknown[]) => unknown[] | Promise<unknown[]>>;
|
|
13
|
+
once: boolean;
|
|
14
|
+
}
|
|
15
|
+
export interface WorkflowStep {
|
|
16
|
+
index: number;
|
|
17
|
+
method: string;
|
|
18
|
+
}
|
|
19
|
+
export interface BotSchema {
|
|
20
|
+
handlers: Record<string, HandlerMeta>;
|
|
21
|
+
workflows: Record<string, WorkflowStep[]>;
|
|
22
|
+
}
|
|
23
|
+
type Metadata = Record<string | symbol, unknown>;
|
|
24
|
+
/**
|
|
25
|
+
* Registra un step dentro de un workflow. Uso interno del decorador `@pipe`.
|
|
26
|
+
* Registers a step inside a workflow. Internal use of the `@pipe` decorator.
|
|
27
|
+
*
|
|
28
|
+
* @param metadata - Metadata del contexto del decorador / Decorator context metadata
|
|
29
|
+
* @param workflow - Nombre del workflow / Workflow name
|
|
30
|
+
* @param step - Step a registrar (índice + nombre del método) / Step to register (index + method name)
|
|
31
|
+
*/
|
|
32
|
+
export declare function register_workflow_step(metadata: Metadata, workflow: string, step: WorkflowStep): void;
|
|
33
|
+
/**
|
|
34
|
+
* Factory para crear decoradores paramétricos Stage 3. El callback muta la metadata
|
|
35
|
+
* del handler mediante la entrada resuelta.
|
|
36
|
+
* Factory to build Stage 3 parametric decorators. The callback mutates the handler
|
|
37
|
+
* metadata via the resolved entry.
|
|
38
|
+
*
|
|
39
|
+
* @param callback - Mutador de la entrada del handler / Handler entry mutator
|
|
40
|
+
* @returns Decorador paramétrico listo para aplicarse a un método / Parametric decorator ready to be applied to a method
|
|
41
|
+
*/
|
|
42
|
+
export declare function decorator<P extends unknown[]>(callback: (metadata: Metadata, handler: HandlerMeta, params: P) => void): (...params: P) => (_value: unknown, context: ClassMethodDecoratorContext) => void;
|
|
43
|
+
/**
|
|
44
|
+
* Clase base opcional para bots declarativos. El consumer extiende `WhatsAppBot`
|
|
45
|
+
* (o usa `@WhatsApp` como class decorator), declara métodos decorados y al
|
|
46
|
+
* `connect()` los listeners se cablean automáticamente contra el event emitter real.
|
|
47
|
+
* Optional base class for declarative bots. The consumer extends `WhatsAppBot`
|
|
48
|
+
* (or uses `@WhatsApp` as a class decorator), declares decorated methods and at
|
|
49
|
+
* `connect()` listeners get wired against the real event emitter automatically.
|
|
50
|
+
*/
|
|
51
|
+
export declare class WhatsAppBot extends WhatsApp {
|
|
52
|
+
constructor(options: IWhatsApp);
|
|
53
|
+
/**
|
|
54
|
+
* Inicia la conexión cableando previamente los handlers decorados. Los métodos
|
|
55
|
+
* `@pair` se invocan en paralelo con el `callback` opcional.
|
|
56
|
+
* Starts the connection wiring decorated handlers beforehand. `@pair` methods
|
|
57
|
+
* run in parallel alongside the optional `callback`.
|
|
58
|
+
*
|
|
59
|
+
* @param callback - Callback tradicional del PIN/QR (opcional si hay `@pair`) / Traditional PIN/QR callback (optional when `@pair` exists)
|
|
60
|
+
*/
|
|
61
|
+
connect(callback?: (auth: string | Buffer) => void | Promise<void>): Promise<void>;
|
|
62
|
+
/**
|
|
63
|
+
* Recolecta los métodos marcados con `@pair` ligados a `this`.
|
|
64
|
+
* Collects methods marked with `@pair` bound to `this`.
|
|
65
|
+
*
|
|
66
|
+
* @returns Lista de funciones ligadas listas para invocar con el code / List of bound functions ready to invoke with the code
|
|
67
|
+
*/
|
|
68
|
+
private _collect_pair_methods;
|
|
69
|
+
/**
|
|
70
|
+
* Cablea los handlers decorados contra el event emitter: registra listeners
|
|
71
|
+
* (`@on`/`@once`), timers (`@every`) y workflows (`@pipe`).
|
|
72
|
+
* Wires decorated handlers against the event emitter: registers listeners
|
|
73
|
+
* (`@on`/`@once`), timers (`@every`) and workflows (`@pipe`).
|
|
74
|
+
*/
|
|
75
|
+
private _wire_handlers;
|
|
76
|
+
}
|
|
77
|
+
export default WhatsAppBot;
|