@arcaelas/whatsapp 1.4.0 → 2.0.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/Chat.d.ts +187 -205
- package/build/cjs/Chat.js +151 -274
- package/build/cjs/Chat.js.map +1 -1
- package/build/cjs/Contact.d.ts +317 -304
- package/build/cjs/Contact.js +58 -103
- package/build/cjs/Contact.js.map +1 -1
- package/build/cjs/Message.d.ts +567 -265
- package/build/cjs/Message.js +274 -256
- package/build/cjs/Message.js.map +1 -1
- package/build/cjs/WhatsApp.d.ts +16 -4
- package/build/cjs/WhatsApp.js +77 -79
- package/build/cjs/WhatsApp.js.map +1 -1
- package/build/cjs/index.d.ts +2 -2
- package/build/cjs/store/driver/FileEngine.d.ts +13 -2
- package/build/cjs/store/driver/FileEngine.js +15 -19
- package/build/cjs/store/driver/FileEngine.js.map +1 -1
- package/build/cjs/store/driver/RedisEngine.d.ts +13 -4
- package/build/cjs/store/driver/RedisEngine.js +23 -22
- package/build/cjs/store/driver/RedisEngine.js.map +1 -1
- package/build/cjs/store/engine.d.ts +9 -10
- package/build/esm/Chat.d.ts +187 -205
- package/build/esm/Chat.js +151 -273
- package/build/esm/Chat.js.map +1 -1
- package/build/esm/Contact.d.ts +317 -304
- package/build/esm/Contact.js +58 -102
- package/build/esm/Contact.js.map +1 -1
- package/build/esm/Message.d.ts +567 -265
- package/build/esm/Message.js +275 -256
- package/build/esm/Message.js.map +1 -1
- package/build/esm/WhatsApp.d.ts +16 -4
- package/build/esm/WhatsApp.js +80 -82
- package/build/esm/WhatsApp.js.map +1 -1
- package/build/esm/index.d.ts +2 -2
- package/build/esm/store/driver/FileEngine.d.ts +13 -2
- package/build/esm/store/driver/FileEngine.js +15 -19
- package/build/esm/store/driver/FileEngine.js.map +1 -1
- package/build/esm/store/driver/RedisEngine.d.ts +13 -4
- package/build/esm/store/driver/RedisEngine.js +23 -22
- package/build/esm/store/driver/RedisEngine.js.map +1 -1
- package/build/esm/store/engine.d.ts +9 -10
- package/package.json +2 -2
package/build/esm/Chat.js
CHANGED
|
@@ -3,79 +3,40 @@
|
|
|
3
3
|
* @description Clase Chat para gestión de conversaciones de WhatsApp
|
|
4
4
|
*/
|
|
5
5
|
import { BufferJSON } from 'baileys';
|
|
6
|
-
/**
|
|
7
|
-
* @description Construye IChat desde raw.
|
|
8
|
-
* @param raw Objeto raw del chat.
|
|
9
|
-
* @returns IChat normalizado.
|
|
10
|
-
*/
|
|
11
|
-
export function build_chat(raw) {
|
|
12
|
-
return {
|
|
13
|
-
id: raw.id,
|
|
14
|
-
type: raw.id.endsWith('@g.us') ? 'group' : 'contact',
|
|
15
|
-
name: raw.name ?? raw.displayName ?? raw.id.split('@')[0],
|
|
16
|
-
content: raw.description ?? '',
|
|
17
|
-
pined: raw.pinned !== null && raw.pinned !== undefined,
|
|
18
|
-
archived: raw.archived ?? false,
|
|
19
|
-
muted: raw.muteEndTime ?? false,
|
|
20
|
-
readed: (raw.unreadCount === 0 || raw.unreadCount === null) && !raw.markedAsUnread,
|
|
21
|
-
readonly: raw.readOnly ?? false,
|
|
22
|
-
labels: [],
|
|
23
|
-
raw,
|
|
24
|
-
};
|
|
25
|
-
}
|
|
26
6
|
/**
|
|
27
7
|
* @description
|
|
28
8
|
* Clase base para representar una conversación de WhatsApp.
|
|
29
|
-
*
|
|
9
|
+
* Base class representing a WhatsApp conversation.
|
|
30
10
|
*/
|
|
31
11
|
export class Chat {
|
|
32
|
-
constructor(
|
|
33
|
-
this.raw =
|
|
34
|
-
}
|
|
35
|
-
/** JID único del chat */
|
|
36
|
-
get id() {
|
|
37
|
-
return this.raw.id;
|
|
38
|
-
}
|
|
39
|
-
/** Tipo de chat */
|
|
40
|
-
get type() {
|
|
41
|
-
return this.raw.id.endsWith('@g.us') ? 'group' : 'contact';
|
|
42
|
-
}
|
|
43
|
-
/** Nombre del chat */
|
|
44
|
-
get name() {
|
|
45
|
-
return this.raw.name ?? this.raw.displayName ?? this.raw.id.split('@')[0];
|
|
46
|
-
}
|
|
47
|
-
/** Descripción del chat/grupo */
|
|
48
|
-
get content() {
|
|
49
|
-
return this.raw.description ?? '';
|
|
50
|
-
}
|
|
51
|
-
/** Si está fijado */
|
|
52
|
-
get pined() {
|
|
53
|
-
return this.raw.pinned !== null && this.raw.pinned !== undefined;
|
|
54
|
-
}
|
|
55
|
-
/** Si está archivado */
|
|
56
|
-
get archived() {
|
|
57
|
-
return this.raw.archived ?? false;
|
|
58
|
-
}
|
|
59
|
-
/** Timestamp cuando expira el silencio o false */
|
|
60
|
-
get muted() {
|
|
61
|
-
return this.raw.muteEndTime ?? false;
|
|
62
|
-
}
|
|
63
|
-
/** Si está leído */
|
|
64
|
-
get readed() {
|
|
65
|
-
return (this.raw.unreadCount === 0 || this.raw.unreadCount === null) && !this.raw.markedAsUnread;
|
|
66
|
-
}
|
|
67
|
-
/** Si es solo lectura */
|
|
68
|
-
get readonly() {
|
|
69
|
-
return this.raw.readOnly ?? false;
|
|
12
|
+
constructor(raw) {
|
|
13
|
+
this.raw = raw;
|
|
70
14
|
}
|
|
15
|
+
/** JID único del chat / Unique chat JID */
|
|
16
|
+
get id() { return this.raw.id; }
|
|
17
|
+
/** Tipo de chat / Chat type */
|
|
18
|
+
get type() { return this.raw.id.endsWith('@g.us') ? 'group' : 'contact'; }
|
|
19
|
+
/** Nombre del chat / Chat name */
|
|
20
|
+
get name() { return this.raw.name ?? this.raw.displayName ?? this.raw.id.split('@')[0]; }
|
|
21
|
+
/** Descripción del chat/grupo / Chat/group description */
|
|
22
|
+
get content() { return this.raw.description ?? ''; }
|
|
23
|
+
/** Si está fijado / Whether it's pinned */
|
|
24
|
+
get pined() { return this.raw.pinned !== null && this.raw.pinned !== undefined; }
|
|
25
|
+
/** Si está archivado / Whether it's archived */
|
|
26
|
+
get archived() { return this.raw.archived ?? false; }
|
|
27
|
+
/** Timestamp cuando expira el silencio o false / Mute end timestamp or false */
|
|
28
|
+
get muted() { return this.raw.muteEndTime ?? false; }
|
|
29
|
+
/** Si está leído / Whether it's read */
|
|
30
|
+
get readed() { return (this.raw.unreadCount === 0 || this.raw.unreadCount === null) && !this.raw.markedAsUnread; }
|
|
31
|
+
/** Si es solo lectura / Whether it's read-only */
|
|
32
|
+
get readonly() { return this.raw.readOnly ?? false; }
|
|
71
33
|
}
|
|
72
34
|
/**
|
|
73
35
|
* @description Factory que retorna la clase Chat enlazada al contexto.
|
|
36
|
+
* Factory that returns the Chat class bound to context.
|
|
74
37
|
* @param wa Instancia de WhatsApp.
|
|
75
|
-
* @returns Clase _Chat que extiende Chat.
|
|
76
38
|
*/
|
|
77
39
|
export function chat(wa) {
|
|
78
|
-
/** Obtiene el último mensaje raw del chat para chatModify */
|
|
79
40
|
async function _last_messages(cid) {
|
|
80
41
|
const messages_index = await wa.engine.get(`chat/${cid}/messages`);
|
|
81
42
|
if (!messages_index)
|
|
@@ -92,65 +53,29 @@ export function chat(wa) {
|
|
|
92
53
|
const _Chat = class extends Chat {
|
|
93
54
|
/**
|
|
94
55
|
* @description Obtiene un chat por su ID.
|
|
95
|
-
*
|
|
96
|
-
* @returns Chat o null si no existe.
|
|
56
|
+
* Retrieves a chat by its ID.
|
|
97
57
|
*/
|
|
98
58
|
static async get(cid) {
|
|
99
|
-
const
|
|
59
|
+
const jid = await wa.resolveJID(cid);
|
|
60
|
+
if (!jid)
|
|
61
|
+
return null;
|
|
62
|
+
const stored = await wa.engine.get(`chat/${jid}/index`);
|
|
100
63
|
if (stored)
|
|
101
64
|
return new _Chat(JSON.parse(stored, BufferJSON.reviver));
|
|
102
|
-
const contact = await wa.Contact.get(
|
|
65
|
+
const contact = await wa.Contact.get(jid);
|
|
103
66
|
if (!contact)
|
|
104
67
|
return null;
|
|
105
|
-
const raw = { id:
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
return new _Chat(data);
|
|
109
|
-
}
|
|
110
|
-
/**
|
|
111
|
-
* @description Actualiza los datos del chat desde WhatsApp.
|
|
112
|
-
* @param cid ID del chat.
|
|
113
|
-
* @returns Chat actualizado o null.
|
|
114
|
-
*/
|
|
115
|
-
static async refresh(cid) {
|
|
116
|
-
if (!wa.socket)
|
|
117
|
-
return null;
|
|
118
|
-
const stored = await wa.engine.get(`chat/${cid}/index`);
|
|
119
|
-
const data = stored ? JSON.parse(stored, BufferJSON.reviver) : build_chat({ id: cid });
|
|
120
|
-
// Para grupos, obtener metadata actualizada
|
|
121
|
-
if (cid.endsWith('@g.us')) {
|
|
122
|
-
try {
|
|
123
|
-
const meta = await wa.socket.groupMetadata(cid);
|
|
124
|
-
data.raw.name = meta.subject;
|
|
125
|
-
data.raw.description = meta.desc ?? null;
|
|
126
|
-
data.raw.participant = meta.participants.map((p) => ({ id: p.id, admin: p.admin ?? null }));
|
|
127
|
-
data.raw.createdBy = meta.owner ?? null;
|
|
128
|
-
data.raw.createdAt = meta.creation ?? null;
|
|
129
|
-
data.name = meta.subject;
|
|
130
|
-
data.content = meta.desc ?? '';
|
|
131
|
-
}
|
|
132
|
-
catch { /* group metadata may fail */ }
|
|
133
|
-
}
|
|
134
|
-
else {
|
|
135
|
-
// Para contactos individuales, actualizar desde Contact
|
|
136
|
-
const contact = await wa.Contact.refresh(cid);
|
|
137
|
-
if (contact) {
|
|
138
|
-
data.raw.name = contact.name;
|
|
139
|
-
data.name = contact.name;
|
|
140
|
-
}
|
|
141
|
-
}
|
|
142
|
-
await wa.engine.set(`chat/${cid}/index`, JSON.stringify(data, BufferJSON.replacer));
|
|
143
|
-
return new _Chat(data);
|
|
68
|
+
const raw = { id: jid, name: contact.name };
|
|
69
|
+
await wa.engine.set(`chat/${jid}/index`, JSON.stringify(raw, BufferJSON.replacer));
|
|
70
|
+
return new _Chat(raw);
|
|
144
71
|
}
|
|
145
72
|
/**
|
|
146
73
|
* @description Obtiene chats paginados.
|
|
147
|
-
*
|
|
148
|
-
* @param limit Cantidad máxima de resultados.
|
|
149
|
-
* @returns Array de chats.
|
|
74
|
+
* Retrieves paginated chats.
|
|
150
75
|
*/
|
|
151
|
-
static async
|
|
76
|
+
static async list(offset = 0, limit = 50) {
|
|
152
77
|
const chats = [];
|
|
153
|
-
for (const key of await wa.engine.list('chat/', offset, limit
|
|
78
|
+
for (const key of await wa.engine.list('chat/', offset, limit)) {
|
|
154
79
|
const stored = await wa.engine.get(key);
|
|
155
80
|
if (stored)
|
|
156
81
|
chats.push(new _Chat(JSON.parse(stored, BufferJSON.reviver)));
|
|
@@ -158,233 +83,186 @@ export function chat(wa) {
|
|
|
158
83
|
return chats;
|
|
159
84
|
}
|
|
160
85
|
/**
|
|
161
|
-
* @description Fija o desfija un chat.
|
|
162
|
-
*
|
|
163
|
-
* @param value true para fijar, false para desfijar.
|
|
164
|
-
* @returns true si se actualizó correctamente.
|
|
86
|
+
* @description Fija o desfija un chat por su ID.
|
|
87
|
+
* Pins or unpins a chat by its ID.
|
|
165
88
|
*/
|
|
166
89
|
static async pin(cid, value) {
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
const last_messages = await _last_messages(cid);
|
|
170
|
-
await wa.socket.chatModify({ pin: value, lastMessages: last_messages }, cid);
|
|
171
|
-
const stored = await wa.engine.get(`chat/${cid}/index`);
|
|
172
|
-
if (!stored)
|
|
173
|
-
return true;
|
|
174
|
-
const data = JSON.parse(stored, BufferJSON.reviver);
|
|
175
|
-
data.raw.pinned = value ? Date.now() : null;
|
|
176
|
-
data.pined = value;
|
|
177
|
-
await wa.engine.set(`chat/${cid}/index`, JSON.stringify(data, BufferJSON.replacer));
|
|
178
|
-
return true;
|
|
90
|
+
const chat = await _Chat.get(cid);
|
|
91
|
+
return chat ? chat.pin(value) : false;
|
|
179
92
|
}
|
|
180
93
|
/**
|
|
181
|
-
* @description Archiva o desarchiva un chat.
|
|
182
|
-
*
|
|
183
|
-
* @param value true para archivar, false para desarchivar.
|
|
184
|
-
* @returns true si se actualizó correctamente.
|
|
94
|
+
* @description Archiva o desarchiva un chat por su ID.
|
|
95
|
+
* Archives or unarchives a chat by its ID.
|
|
185
96
|
*/
|
|
186
97
|
static async archive(cid, value) {
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
const last_messages = await _last_messages(cid);
|
|
190
|
-
await wa.socket.chatModify({ archive: value, lastMessages: last_messages }, cid);
|
|
191
|
-
const stored = await wa.engine.get(`chat/${cid}/index`);
|
|
192
|
-
if (!stored)
|
|
193
|
-
return true;
|
|
194
|
-
const data = JSON.parse(stored, BufferJSON.reviver);
|
|
195
|
-
data.raw.archived = value;
|
|
196
|
-
data.archived = value;
|
|
197
|
-
await wa.engine.set(`chat/${cid}/index`, JSON.stringify(data, BufferJSON.replacer));
|
|
198
|
-
return true;
|
|
98
|
+
const chat = await _Chat.get(cid);
|
|
99
|
+
return chat ? chat.archive(value) : false;
|
|
199
100
|
}
|
|
200
101
|
/**
|
|
201
|
-
* @description Silencia o quita silencio de un chat.
|
|
202
|
-
*
|
|
203
|
-
* @param duration Duración en milisegundos (0 o null para quitar silencio).
|
|
204
|
-
* @returns true si se actualizó correctamente.
|
|
102
|
+
* @description Silencia o quita silencio de un chat por su ID.
|
|
103
|
+
* Mutes or unmutes a chat by its ID.
|
|
205
104
|
*/
|
|
206
105
|
static async mute(cid, duration) {
|
|
207
|
-
|
|
208
|
-
|
|
209
|
-
const mute_end = duration ? Date.now() + duration : null;
|
|
210
|
-
const last_messages = await _last_messages(cid);
|
|
211
|
-
await wa.socket.chatModify({ mute: mute_end, lastMessages: last_messages }, cid);
|
|
212
|
-
const stored = await wa.engine.get(`chat/${cid}/index`);
|
|
213
|
-
if (!stored)
|
|
214
|
-
return true;
|
|
215
|
-
const data = JSON.parse(stored, BufferJSON.reviver);
|
|
216
|
-
data.raw.muteEndTime = mute_end;
|
|
217
|
-
data.muted = mute_end ?? false;
|
|
218
|
-
await wa.engine.set(`chat/${cid}/index`, JSON.stringify(data, BufferJSON.replacer));
|
|
219
|
-
return true;
|
|
106
|
+
const chat = await _Chat.get(cid);
|
|
107
|
+
return chat ? chat.mute(duration) : false;
|
|
220
108
|
}
|
|
221
109
|
/**
|
|
222
|
-
* @description Marca un chat como
|
|
223
|
-
*
|
|
224
|
-
* @returns true si se marcó correctamente.
|
|
110
|
+
* @description Marca un chat como leido por su ID.
|
|
111
|
+
* Marks a chat as read by its ID.
|
|
225
112
|
*/
|
|
226
113
|
static async seen(cid) {
|
|
227
|
-
|
|
228
|
-
|
|
229
|
-
const last_messages = await _last_messages(cid);
|
|
230
|
-
if (!last_messages.length)
|
|
231
|
-
return false;
|
|
232
|
-
const msg = last_messages[0];
|
|
233
|
-
await wa.socket.readMessages([{ remoteJid: cid, id: msg.key.id, participant: msg.key.fromMe ? undefined : msg.key.remoteJid }]);
|
|
234
|
-
// Actualizar estado del chat
|
|
235
|
-
const stored = await wa.engine.get(`chat/${cid}/index`);
|
|
236
|
-
if (stored) {
|
|
237
|
-
const data = JSON.parse(stored, BufferJSON.reviver);
|
|
238
|
-
data.raw.unreadCount = 0;
|
|
239
|
-
data.raw.markedAsUnread = false;
|
|
240
|
-
data.readed = true;
|
|
241
|
-
await wa.engine.set(`chat/${cid}/index`, JSON.stringify(data, BufferJSON.replacer));
|
|
242
|
-
}
|
|
243
|
-
return true;
|
|
114
|
+
const chat = await _Chat.get(cid);
|
|
115
|
+
return chat ? chat.seen() : false;
|
|
244
116
|
}
|
|
245
117
|
/**
|
|
246
|
-
* @description
|
|
247
|
-
*
|
|
118
|
+
* @description Elimina un chat por su ID.
|
|
119
|
+
* Removes a chat by its ID.
|
|
248
120
|
*/
|
|
249
|
-
static async
|
|
250
|
-
await
|
|
121
|
+
static async remove(cid) {
|
|
122
|
+
const chat = await _Chat.get(cid);
|
|
123
|
+
return chat ? chat.remove() : false;
|
|
251
124
|
}
|
|
252
125
|
/**
|
|
253
|
-
* @description
|
|
254
|
-
*
|
|
255
|
-
* @returns true si se eliminó correctamente.
|
|
126
|
+
* @description Actualiza los datos del chat desde WhatsApp.
|
|
127
|
+
* Refreshes chat data from WhatsApp.
|
|
256
128
|
*/
|
|
257
|
-
|
|
129
|
+
async refresh() {
|
|
258
130
|
if (!wa.socket)
|
|
259
|
-
return
|
|
260
|
-
|
|
261
|
-
|
|
262
|
-
|
|
263
|
-
|
|
264
|
-
|
|
265
|
-
|
|
131
|
+
return null;
|
|
132
|
+
if (this.id.endsWith('@g.us')) {
|
|
133
|
+
try {
|
|
134
|
+
const meta = await wa.socket.groupMetadata(this.id);
|
|
135
|
+
this.raw.name = meta.subject;
|
|
136
|
+
this.raw.description = meta.desc ?? null;
|
|
137
|
+
this.raw.participant = meta.participants.map((p) => ({ id: p.id, admin: p.admin ?? null }));
|
|
138
|
+
this.raw.createdBy = meta.owner ?? null;
|
|
139
|
+
this.raw.createdAt = meta.creation ?? null;
|
|
140
|
+
}
|
|
141
|
+
catch { /* group metadata may fail */ }
|
|
266
142
|
}
|
|
267
143
|
else {
|
|
268
|
-
await wa.
|
|
144
|
+
const contact = await wa.Contact.get(this.id);
|
|
145
|
+
if (contact) {
|
|
146
|
+
await contact.refresh();
|
|
147
|
+
this.raw.name = contact.name;
|
|
148
|
+
}
|
|
269
149
|
}
|
|
270
|
-
await
|
|
150
|
+
await wa.engine.set(`chat/${this.id}/index`, JSON.stringify(this.raw, BufferJSON.replacer));
|
|
151
|
+
return this;
|
|
152
|
+
}
|
|
153
|
+
/**
|
|
154
|
+
* @description Elimina el chat con cascade delete.
|
|
155
|
+
* Deletes the chat with cascade delete.
|
|
156
|
+
*/
|
|
157
|
+
async remove() {
|
|
158
|
+
if (!wa.socket)
|
|
159
|
+
return false;
|
|
160
|
+
if (this.type === 'group')
|
|
161
|
+
await wa.socket.groupLeave(this.id);
|
|
162
|
+
else
|
|
163
|
+
await wa.socket.chatModify({ delete: true, lastMessages: [] }, this.id);
|
|
164
|
+
await wa.engine.set(`chat/${this.id}`, null);
|
|
271
165
|
return true;
|
|
272
166
|
}
|
|
273
167
|
/**
|
|
274
|
-
* @description
|
|
275
|
-
*
|
|
276
|
-
* @param mid ID del mensaje.
|
|
277
|
-
* @param timestamp Timestamp de creación.
|
|
168
|
+
* @description Fija o desfija el chat.
|
|
169
|
+
* Pins or unpins the chat.
|
|
278
170
|
*/
|
|
279
|
-
|
|
280
|
-
|
|
281
|
-
|
|
282
|
-
const
|
|
283
|
-
await wa.
|
|
171
|
+
async pin(value) {
|
|
172
|
+
if (!wa.socket)
|
|
173
|
+
return false;
|
|
174
|
+
const last_messages = await _last_messages(this.id);
|
|
175
|
+
await wa.socket.chatModify({ pin: value, lastMessages: last_messages }, this.id);
|
|
176
|
+
this.raw.pinned = value ? Date.now() : null;
|
|
177
|
+
await wa.engine.set(`chat/${this.id}/index`, JSON.stringify(this.raw, BufferJSON.replacer));
|
|
178
|
+
return true;
|
|
284
179
|
}
|
|
285
180
|
/**
|
|
286
|
-
* @description
|
|
287
|
-
*
|
|
288
|
-
* @param mid ID del mensaje.
|
|
181
|
+
* @description Archiva o desarchiva el chat.
|
|
182
|
+
* Archives or unarchives the chat.
|
|
289
183
|
*/
|
|
290
|
-
|
|
291
|
-
|
|
292
|
-
|
|
293
|
-
|
|
294
|
-
|
|
295
|
-
|
|
296
|
-
|
|
297
|
-
|
|
298
|
-
.filter((line) => !line.endsWith(` ${mid}`))
|
|
299
|
-
.join('\n');
|
|
300
|
-
await wa.engine.set(key, filtered || null);
|
|
184
|
+
async archive(value) {
|
|
185
|
+
if (!wa.socket)
|
|
186
|
+
return false;
|
|
187
|
+
const last_messages = await _last_messages(this.id);
|
|
188
|
+
await wa.socket.chatModify({ archive: value, lastMessages: last_messages }, this.id);
|
|
189
|
+
this.raw.archived = value;
|
|
190
|
+
await wa.engine.set(`chat/${this.id}/index`, JSON.stringify(this.raw, BufferJSON.replacer));
|
|
191
|
+
return true;
|
|
301
192
|
}
|
|
302
193
|
/**
|
|
303
|
-
* @description
|
|
304
|
-
*
|
|
305
|
-
* @param
|
|
306
|
-
* @param limit Cantidad máxima.
|
|
307
|
-
* @returns Array de IDs de mensajes.
|
|
194
|
+
* @description Silencia o quita silencio del chat.
|
|
195
|
+
* Mutes or unmutes the chat.
|
|
196
|
+
* @param duration Duración en ms (0 o null para quitar silencio) / Duration in ms (0 or null to unmute).
|
|
308
197
|
*/
|
|
309
|
-
|
|
310
|
-
|
|
311
|
-
|
|
312
|
-
|
|
313
|
-
|
|
314
|
-
|
|
315
|
-
|
|
316
|
-
|
|
317
|
-
|
|
318
|
-
.filter(Boolean);
|
|
198
|
+
async mute(duration) {
|
|
199
|
+
if (!wa.socket)
|
|
200
|
+
return false;
|
|
201
|
+
const mute_end = duration ? Date.now() + duration : null;
|
|
202
|
+
const last_messages = await _last_messages(this.id);
|
|
203
|
+
await wa.socket.chatModify({ mute: mute_end, lastMessages: last_messages }, this.id);
|
|
204
|
+
this.raw.muteEndTime = mute_end;
|
|
205
|
+
await wa.engine.set(`chat/${this.id}/index`, JSON.stringify(this.raw, BufferJSON.replacer));
|
|
206
|
+
return true;
|
|
319
207
|
}
|
|
320
208
|
/**
|
|
321
|
-
* @description
|
|
322
|
-
*
|
|
323
|
-
* @returns Cantidad de mensajes.
|
|
209
|
+
* @description Marca el chat como leído.
|
|
210
|
+
* Marks the chat as read.
|
|
324
211
|
*/
|
|
325
|
-
|
|
326
|
-
|
|
327
|
-
|
|
328
|
-
|
|
329
|
-
|
|
212
|
+
async seen() {
|
|
213
|
+
if (!wa.socket)
|
|
214
|
+
return false;
|
|
215
|
+
const last_messages = await _last_messages(this.id);
|
|
216
|
+
if (!last_messages.length)
|
|
217
|
+
return false;
|
|
218
|
+
const msg = last_messages[0];
|
|
219
|
+
const key = msg.key ?? {};
|
|
220
|
+
await wa.socket.readMessages([{ remoteJid: this.id, id: key.id ?? '', participant: key.fromMe ? undefined : key.remoteJid ?? undefined }]);
|
|
221
|
+
this.raw.unreadCount = 0;
|
|
222
|
+
this.raw.markedAsUnread = false;
|
|
223
|
+
await wa.engine.set(`chat/${this.id}/index`, JSON.stringify(this.raw, BufferJSON.replacer));
|
|
224
|
+
return true;
|
|
330
225
|
}
|
|
331
226
|
/**
|
|
332
|
-
* @description Obtiene los miembros
|
|
333
|
-
*
|
|
334
|
-
* @param offset Inicio de paginación.
|
|
335
|
-
* @param limit Cantidad máxima de resultados.
|
|
336
|
-
* @returns Array de contactos.
|
|
227
|
+
* @description Obtiene los miembros del chat.
|
|
228
|
+
* Gets chat members.
|
|
337
229
|
*/
|
|
338
|
-
|
|
339
|
-
if (!
|
|
340
|
-
const contact = await wa.Contact.get(
|
|
230
|
+
async members(offset = 0, limit = 50) {
|
|
231
|
+
if (!this.id.endsWith('@g.us') || !wa.socket) {
|
|
232
|
+
const contact = await wa.Contact.get(this.id);
|
|
341
233
|
return contact ? [contact] : [];
|
|
342
234
|
}
|
|
343
235
|
const members = [];
|
|
344
|
-
for (const p of (await wa.socket.groupMetadata(
|
|
236
|
+
for (const p of (await wa.socket.groupMetadata(this.id)).participants.slice(offset, offset + limit)) {
|
|
345
237
|
const existing = await wa.Contact.get(p.id);
|
|
346
238
|
if (existing) {
|
|
347
239
|
members.push(existing);
|
|
348
240
|
}
|
|
349
241
|
else {
|
|
350
242
|
const raw = { id: p.id };
|
|
351
|
-
|
|
352
|
-
|
|
353
|
-
members.push(new wa.Contact(data));
|
|
243
|
+
await wa.engine.set(`contact/${p.id}/index`, JSON.stringify(raw, BufferJSON.replacer));
|
|
244
|
+
members.push(new wa.Contact(raw));
|
|
354
245
|
}
|
|
355
246
|
}
|
|
356
247
|
return members;
|
|
357
248
|
}
|
|
358
249
|
/**
|
|
359
250
|
* @description Obtiene mensajes del chat (paginados).
|
|
360
|
-
*
|
|
361
|
-
* @param limit Cantidad máxima de resultados.
|
|
362
|
-
* @returns Array de mensajes.
|
|
251
|
+
* Gets chat messages (paginated).
|
|
363
252
|
*/
|
|
364
253
|
async messages(offset = 0, limit = 50) {
|
|
365
|
-
|
|
366
|
-
const messages = [];
|
|
367
|
-
for (const mid of ids) {
|
|
368
|
-
const msg = await wa.Message.get(this.id, mid);
|
|
369
|
-
if (msg)
|
|
370
|
-
messages.push(msg);
|
|
371
|
-
}
|
|
372
|
-
return messages;
|
|
254
|
+
return wa.Message.list(this.id, offset, limit);
|
|
373
255
|
}
|
|
374
256
|
/**
|
|
375
|
-
* @description
|
|
376
|
-
*
|
|
257
|
+
* @description Obtiene el contacto asociado al chat (solo chats individuales).
|
|
258
|
+
* Gets the contact associated with the chat (individual chats only).
|
|
377
259
|
*/
|
|
378
|
-
async
|
|
379
|
-
|
|
380
|
-
if (!updated)
|
|
260
|
+
async contact() {
|
|
261
|
+
if (this.type === 'group')
|
|
381
262
|
return null;
|
|
382
|
-
|
|
383
|
-
return this;
|
|
263
|
+
return wa.Contact.get(this.id);
|
|
384
264
|
}
|
|
385
265
|
};
|
|
386
266
|
return _Chat;
|
|
387
267
|
}
|
|
388
|
-
// Import para la factory
|
|
389
|
-
import { build_contact } from './Contact';
|
|
390
268
|
//# sourceMappingURL=Chat.js.map
|
package/build/esm/Chat.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Chat.js","sourceRoot":"","sources":["../../src/Chat.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"Chat.js","sourceRoot":"","sources":["../../src/Chat.ts"],"names":[],"mappings":"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"}
|