@builderbot/provider-baileys 1.2.10-y.2 → 1.3.2-alpha.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/dist/bailey.d.ts +16 -2
- package/dist/bailey.d.ts.map +1 -1
- package/dist/baileyWrapper.d.ts +1 -2
- package/dist/baileyWrapper.d.ts.map +1 -1
- package/dist/index.cjs +40 -5
- package/dist/index.mjs +31814 -0
- package/dist/type.d.ts +3 -3
- package/dist/type.d.ts.map +1 -1
- package/package.json +14 -5
package/dist/bailey.d.ts
CHANGED
|
@@ -4,6 +4,7 @@ import type { PathOrFileDescriptor } from 'fs';
|
|
|
4
4
|
import NodeCache from 'node-cache';
|
|
5
5
|
import type polka from 'polka';
|
|
6
6
|
import type { IStickerOptions } from 'wa-sticker-formatter';
|
|
7
|
+
|
|
7
8
|
import { BaileysEventMap, WAMessage, WASocket, proto } from './baileyWrapper';
|
|
8
9
|
import type { BaileyGlobalVendorArgs } from './type';
|
|
9
10
|
declare class BaileysProvider extends ProviderClass<WASocket> {
|
|
@@ -17,6 +18,7 @@ declare class BaileysProvider extends ProviderClass<WASocket> {
|
|
|
17
18
|
private logStream;
|
|
18
19
|
private idsDuplicates;
|
|
19
20
|
private mapSet;
|
|
21
|
+
private readonly PROBLEMATIC_USERS;
|
|
20
22
|
constructor(args: Partial<BaileyGlobalVendorArgs>);
|
|
21
23
|
/**
|
|
22
24
|
* Setup cleanup handlers
|
|
@@ -43,7 +45,19 @@ declare class BaileysProvider extends ProviderClass<WASocket> {
|
|
|
43
45
|
/**
|
|
44
46
|
* Iniciar todo Bailey
|
|
45
47
|
*/
|
|
46
|
-
protected initVendor: () => Promise<
|
|
48
|
+
protected initVendor: () => Promise<import("@leifermendez/baileys").BaileysEventEmitter & {
|
|
49
|
+
process(handler: (events: Partial<import("@leifermendez/baileys").BaileysEventMap>) => void | Promise<void>): () => void;
|
|
50
|
+
buffer(): void;
|
|
51
|
+
createBufferedFunction<A extends any[], T>(work: (...args: A) => Promise<T>): (...args: A) => Promise<T>;
|
|
52
|
+
flush(): boolean;
|
|
53
|
+
isBuffering(): boolean;
|
|
54
|
+
}>;
|
|
55
|
+
/**
|
|
56
|
+
* Manejo específico de errores Bad MAC para usuarios problemáticos
|
|
57
|
+
* @param messageCtx Contexto del mensaje con error
|
|
58
|
+
* @returns true si se manejó el usuario problemático, false si no
|
|
59
|
+
*/
|
|
60
|
+
private handleBadMACForProblematicUser;
|
|
47
61
|
/**
|
|
48
62
|
* Map native events that the Provider class expects
|
|
49
63
|
* to have a standard set of events
|
|
@@ -58,7 +72,7 @@ declare class BaileysProvider extends ProviderClass<WASocket> {
|
|
|
58
72
|
* @param {string} orderToken
|
|
59
73
|
* @example await getOrderDetails('order-id', 'order-token')
|
|
60
74
|
*/
|
|
61
|
-
getOrderDetails: (orderId: string, orderToken: string) => Promise<import("baileys").OrderDetails>;
|
|
75
|
+
getOrderDetails: (orderId: string, orderToken: string) => Promise<import("@leifermendez/baileys").OrderDetails>;
|
|
62
76
|
/**
|
|
63
77
|
* @param {string} number
|
|
64
78
|
* @param {string} message
|
package/dist/bailey.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"bailey.d.ts","sourceRoot":"","sources":["../src/bailey.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAS,MAAM,iBAAiB,CAAA;AACtD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,4BAA4B,CAAA;
|
|
1
|
+
{"version":3,"file":"bailey.d.ts","sourceRoot":"","sources":["../src/bailey.ts"],"names":[],"mappings":"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"}
|
package/dist/baileyWrapper.d.ts
CHANGED
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
import { useMultiFileAuthState, DisconnectReason, proto, makeCacheableSignalKeyStore, getAggregateVotesInPollMessage, WASocket, BaileysEventMap, AnyMediaMessageContent, AnyMessageContent, PollMessageOptions, downloadMediaMessage, WAMessage, MessageUpsertType, isJidGroup, isJidBroadcast } from 'baileys';
|
|
2
|
-
declare const makeWASocketOther: any;
|
|
1
|
+
import { useMultiFileAuthState, DisconnectReason, proto, makeCacheableSignalKeyStore, getAggregateVotesInPollMessage, WASocket, BaileysEventMap, AnyMediaMessageContent, AnyMessageContent, PollMessageOptions, downloadMediaMessage, WAMessage, MessageUpsertType, isJidGroup, isJidBroadcast, makeWASocket as makeWASocketOther } from '@leifermendez/baileys';
|
|
3
2
|
export { makeWASocketOther, useMultiFileAuthState, DisconnectReason, proto, makeCacheableSignalKeyStore, getAggregateVotesInPollMessage, WASocket, BaileysEventMap, AnyMediaMessageContent, AnyMessageContent, PollMessageOptions, downloadMediaMessage, WAMessage, MessageUpsertType, isJidGroup, isJidBroadcast, };
|
|
4
3
|
//# sourceMappingURL=baileyWrapper.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"baileyWrapper.d.ts","sourceRoot":"","sources":["../src/baileyWrapper.ts"],"names":[],"mappings":"AAAA,OAAO,EACH,qBAAqB,EACrB,gBAAgB,EAChB,KAAK,EACL,2BAA2B,EAC3B,8BAA8B,EAC9B,QAAQ,EACR,eAAe,EACf,sBAAsB,EACtB,iBAAiB,EACjB,kBAAkB,EAClB,oBAAoB,EACpB,SAAS,EACT,iBAAiB,EACjB,UAAU,EACV,cAAc,
|
|
1
|
+
{"version":3,"file":"baileyWrapper.d.ts","sourceRoot":"","sources":["../src/baileyWrapper.ts"],"names":[],"mappings":"AAAA,OAAO,EACH,qBAAqB,EACrB,gBAAgB,EAChB,KAAK,EACL,2BAA2B,EAC3B,8BAA8B,EAC9B,QAAQ,EACR,eAAe,EACf,sBAAsB,EACtB,iBAAiB,EACjB,kBAAkB,EAClB,oBAAoB,EACpB,SAAS,EACT,iBAAiB,EACjB,UAAU,EACV,cAAc,EACd,YAAY,IAAI,iBAAiB,EACpC,MAAM,uBAAuB,CAAA;AAE9B,OAAO,EACH,iBAAiB,EACjB,qBAAqB,EACrB,gBAAgB,EAChB,KAAK,EACL,2BAA2B,EAC3B,8BAA8B,EAC9B,QAAQ,EACR,eAAe,EACf,sBAAsB,EACtB,iBAAiB,EACjB,kBAAkB,EAClB,oBAAoB,EACpB,SAAS,EACT,iBAAiB,EACjB,UAAU,EACV,cAAc,GACjB,CAAA"}
|
package/dist/index.cjs
CHANGED
|
@@ -22,7 +22,7 @@ var require$$1$4 = require('tty');
|
|
|
22
22
|
var require$$0$9 = require('crypto');
|
|
23
23
|
var require$$0$b = require('sharp');
|
|
24
24
|
var require$$0$a = require('fluent-ffmpeg');
|
|
25
|
-
var baileys = require('baileys');
|
|
25
|
+
var baileys = require('@leifermendez/baileys');
|
|
26
26
|
|
|
27
27
|
var commonjsGlobal = typeof globalThis !== 'undefined' ? globalThis : typeof window !== 'undefined' ? window : typeof global !== 'undefined' ? global : typeof self !== 'undefined' ? self : {};
|
|
28
28
|
|
|
@@ -30901,8 +30901,6 @@ function requireDist () {
|
|
|
30901
30901
|
|
|
30902
30902
|
var distExports = requireDist();
|
|
30903
30903
|
|
|
30904
|
-
const makeWASocketOther = require('baileys').default;
|
|
30905
|
-
|
|
30906
30904
|
const keepFiles = ['creds.json', 'baileys_store.json', 'app-state-sync', 'session'];
|
|
30907
30905
|
/**
|
|
30908
30906
|
* @alpha
|
|
@@ -30961,6 +30959,8 @@ class BaileysProvider extends bot.ProviderClass {
|
|
|
30961
30959
|
this.reconnectDelay = 1000; // 1 segundo inicial
|
|
30962
30960
|
this.idsDuplicates = [];
|
|
30963
30961
|
this.mapSet = new Set();
|
|
30962
|
+
// ✅ Configuración escalable para usuarios problemáticos
|
|
30963
|
+
this.PROBLEMATIC_USERS = new Set(['@lid']);
|
|
30964
30964
|
this.indexHome = (req, res) => {
|
|
30965
30965
|
try {
|
|
30966
30966
|
const botName = req[this.idBotName];
|
|
@@ -31010,7 +31010,7 @@ class BaileysProvider extends bot.ProviderClass {
|
|
|
31010
31010
|
this.initVendor().then((v) => this.listenOnEvents(v));
|
|
31011
31011
|
}
|
|
31012
31012
|
try {
|
|
31013
|
-
const sock =
|
|
31013
|
+
const sock = baileys.makeWASocket({
|
|
31014
31014
|
logger: loggerBaileys,
|
|
31015
31015
|
version: [2, 3000, 1023223821],
|
|
31016
31016
|
printQRInTerminal: false,
|
|
@@ -31183,8 +31183,11 @@ class BaileysProvider extends bot.ProviderClass {
|
|
|
31183
31183
|
messageCtx.messageStubParameters[0].includes('No session'))
|
|
31184
31184
|
continue;
|
|
31185
31185
|
if (messageCtx?.messageStubParameters?.length &&
|
|
31186
|
-
messageCtx.messageStubParameters[0].includes('Bad MAC'))
|
|
31186
|
+
messageCtx.messageStubParameters[0].includes('Bad MAC')) {
|
|
31187
|
+
// Manejo específico para usuarios problemáticos
|
|
31188
|
+
this.handleBadMACForProblematicUser(messageCtx);
|
|
31187
31189
|
continue;
|
|
31190
|
+
}
|
|
31188
31191
|
if (messageCtx?.messageStubParameters?.length &&
|
|
31189
31192
|
messageCtx.messageStubParameters[0].includes('Invalid')) {
|
|
31190
31193
|
if (this.globalVendorArgs.fallBackAction) {
|
|
@@ -31736,6 +31739,38 @@ class BaileysProvider extends bot.ProviderClass {
|
|
|
31736
31739
|
.get('/', this.indexHome);
|
|
31737
31740
|
}
|
|
31738
31741
|
afterHttpServerInit() { }
|
|
31742
|
+
/**
|
|
31743
|
+
* Manejo específico de errores Bad MAC para usuarios problemáticos
|
|
31744
|
+
* @param messageCtx Contexto del mensaje con error
|
|
31745
|
+
* @returns true si se manejó el usuario problemático, false si no
|
|
31746
|
+
*/
|
|
31747
|
+
handleBadMACForProblematicUser(messageCtx) {
|
|
31748
|
+
const userId = messageCtx?.key?.remoteJid;
|
|
31749
|
+
if (!userId)
|
|
31750
|
+
return false;
|
|
31751
|
+
// Verificación rápida y eficiente
|
|
31752
|
+
const isProblematic = Array.from(this.PROBLEMATIC_USERS).some(user => userId.includes(user));
|
|
31753
|
+
if (isProblematic) {
|
|
31754
|
+
this.logger.log(`🔧 [${new Date().toISOString()}] Bad MAC en usuario problemático: ${userId}`);
|
|
31755
|
+
// Cleanup eficiente y no-bloqueante
|
|
31756
|
+
setImmediate(() => {
|
|
31757
|
+
try {
|
|
31758
|
+
const cleanId = userId.split('@')[0];
|
|
31759
|
+
// Limpiar cache de dispositivos del usuario
|
|
31760
|
+
this.userDevicesCache?.del(cleanId);
|
|
31761
|
+
this.userDevicesCache?.del(userId);
|
|
31762
|
+
// Limpiar cache de reintentos de mensajes
|
|
31763
|
+
const msgKey = `${userId}_${messageCtx.key?.id}`;
|
|
31764
|
+
this.msgRetryCounterCache?.del(msgKey);
|
|
31765
|
+
}
|
|
31766
|
+
catch (error) {
|
|
31767
|
+
this.logger.log(`❌ Error en cleanup para usuario problemático ${userId}:`, error.message);
|
|
31768
|
+
}
|
|
31769
|
+
});
|
|
31770
|
+
return true;
|
|
31771
|
+
}
|
|
31772
|
+
return false;
|
|
31773
|
+
}
|
|
31739
31774
|
shouldReconnect(statusCode) {
|
|
31740
31775
|
// Lista de códigos donde SÍ debemos reconectar
|
|
31741
31776
|
const reconnectableCodes = [
|