@periskope/baileys 6.7.17-alpha.4 → 6.7.18-13
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/README.md +1263 -4
- package/WAProto/GenerateStatics.sh +2 -0
- package/WAProto/WAProto.proto +4633 -0
- package/WAProto/index.d.ts +3212 -122
- package/WAProto/index.js +9635 -299
- package/lib/Defaults/baileys-version.json +1 -1
- package/lib/Defaults/index.d.ts +1 -1
- package/lib/Defaults/index.d.ts.map +1 -0
- package/lib/Defaults/index.js +16 -16
- package/lib/Defaults/index.js.map +1 -0
- package/lib/Signal/Group/ciphertext-message.d.ts +9 -0
- package/lib/Signal/Group/ciphertext-message.d.ts.map +1 -0
- package/lib/Signal/Group/ciphertext-message.js +15 -0
- package/lib/Signal/Group/ciphertext-message.js.map +1 -0
- package/lib/Signal/Group/group-session-builder.d.ts +14 -0
- package/lib/Signal/Group/group-session-builder.d.ts.map +1 -0
- package/lib/Signal/Group/group-session-builder.js +64 -0
- package/lib/Signal/Group/group-session-builder.js.map +1 -0
- package/lib/Signal/Group/group_cipher.d.ts +17 -0
- package/lib/Signal/Group/group_cipher.d.ts.map +1 -0
- package/lib/Signal/Group/group_cipher.js +96 -0
- package/lib/Signal/Group/group_cipher.js.map +1 -0
- package/lib/Signal/Group/index.d.ts +11 -0
- package/lib/Signal/Group/index.d.ts.map +1 -0
- package/lib/Signal/Group/index.js +57 -0
- package/lib/Signal/Group/index.js.map +1 -0
- package/lib/Signal/Group/keyhelper.d.ts +10 -0
- package/lib/Signal/Group/keyhelper.d.ts.map +1 -0
- package/lib/Signal/Group/keyhelper.js +55 -0
- package/lib/Signal/Group/keyhelper.js.map +1 -0
- package/lib/Signal/Group/queue-job.d.ts +1 -0
- package/lib/Signal/Group/queue-job.d.ts.map +1 -0
- package/lib/Signal/Group/queue-job.js +57 -0
- package/lib/Signal/Group/queue-job.js.map +1 -0
- package/lib/Signal/Group/sender-chain-key.d.ts +13 -0
- package/lib/Signal/Group/sender-chain-key.d.ts.map +1 -0
- package/lib/Signal/Group/sender-chain-key.js +34 -0
- package/lib/Signal/Group/sender-chain-key.js.map +1 -0
- package/lib/Signal/Group/sender-key-distribution-message.d.ts +16 -0
- package/lib/Signal/Group/sender-key-distribution-message.d.ts.map +1 -0
- package/lib/Signal/Group/sender-key-distribution-message.js +66 -0
- package/lib/Signal/Group/sender-key-distribution-message.js.map +1 -0
- package/lib/Signal/Group/sender-key-message.d.ts +18 -0
- package/lib/Signal/Group/sender-key-message.d.ts.map +1 -0
- package/lib/Signal/Group/sender-key-message.js +69 -0
- package/lib/Signal/Group/sender-key-message.js.map +1 -0
- package/lib/Signal/Group/sender-key-name.d.ts +17 -0
- package/lib/Signal/Group/sender-key-name.d.ts.map +1 -0
- package/lib/Signal/Group/sender-key-name.js +51 -0
- package/lib/Signal/Group/sender-key-name.js.map +1 -0
- package/lib/Signal/Group/sender-key-record.d.ts +30 -0
- package/lib/Signal/Group/sender-key-record.d.ts.map +1 -0
- package/lib/Signal/Group/sender-key-record.js +53 -0
- package/lib/Signal/Group/sender-key-record.js.map +1 -0
- package/lib/Signal/Group/sender-key-state.d.ts +38 -0
- package/lib/Signal/Group/sender-key-state.d.ts.map +1 -0
- package/lib/Signal/Group/sender-key-state.js +99 -0
- package/lib/Signal/Group/sender-key-state.js.map +1 -0
- package/lib/Signal/Group/sender-message-key.d.ts +11 -0
- package/lib/Signal/Group/sender-message-key.d.ts.map +1 -0
- package/{WASignalGroup/sender_message_key.js → lib/Signal/Group/sender-message-key.js} +29 -39
- package/lib/Signal/Group/sender-message-key.js.map +1 -0
- package/lib/Signal/libsignal.d.ts.map +1 -0
- package/lib/Signal/libsignal.js +33 -20
- package/lib/Signal/libsignal.js.map +1 -0
- package/lib/Socket/Client/index.d.ts.map +1 -0
- package/lib/Socket/Client/index.js.map +1 -0
- package/lib/Socket/Client/types.d.ts.map +1 -0
- package/lib/Socket/Client/types.js.map +1 -0
- package/lib/Socket/Client/websocket.d.ts.map +1 -0
- package/lib/Socket/Client/websocket.js +1 -1
- package/lib/Socket/Client/websocket.js.map +1 -0
- package/lib/Socket/business.d.ts +36 -8
- package/lib/Socket/business.d.ts.map +1 -0
- package/lib/Socket/business.js +5 -5
- package/lib/Socket/business.js.map +1 -0
- package/lib/Socket/chats.d.ts +12 -7
- package/lib/Socket/chats.d.ts.map +1 -0
- package/lib/Socket/chats.js +90 -72
- package/lib/Socket/chats.js.map +1 -0
- package/lib/Socket/communities.d.ts +218 -0
- package/lib/Socket/communities.d.ts.map +1 -0
- package/lib/Socket/communities.js +351 -0
- package/lib/Socket/communities.js.map +1 -0
- package/lib/Socket/groups.d.ts +14 -8
- package/lib/Socket/groups.d.ts.map +1 -0
- package/lib/Socket/groups.js +39 -23
- package/lib/Socket/groups.js.map +1 -0
- package/lib/Socket/index.d.ts +36 -8
- package/lib/Socket/index.d.ts.map +1 -0
- package/lib/Socket/index.js +2 -2
- package/lib/Socket/index.js.map +1 -0
- package/lib/Socket/messages-recv.d.ts +35 -7
- package/lib/Socket/messages-recv.d.ts.map +1 -0
- package/lib/Socket/messages-recv.js +228 -58
- package/lib/Socket/messages-recv.js.map +1 -0
- package/lib/Socket/messages-send.d.ts +35 -7
- package/lib/Socket/messages-send.d.ts.map +1 -0
- package/lib/Socket/messages-send.js +81 -48
- package/lib/Socket/messages-send.js.map +1 -0
- package/lib/Socket/mex.d.ts +2 -0
- package/lib/Socket/mex.d.ts.map +1 -0
- package/lib/Socket/mex.js +46 -0
- package/lib/Socket/mex.js.map +1 -0
- package/lib/Socket/newsletter.d.ts +141 -0
- package/lib/Socket/newsletter.d.ts.map +1 -0
- package/lib/Socket/newsletter.js +183 -0
- package/lib/Socket/newsletter.js.map +1 -0
- package/lib/Socket/socket.d.ts +3 -3
- package/lib/Socket/socket.d.ts.map +1 -0
- package/lib/Socket/socket.js +22 -30
- package/lib/Socket/socket.js.map +1 -0
- package/lib/Socket/usync.d.ts +3 -3
- package/lib/Socket/usync.d.ts.map +1 -0
- package/lib/Socket/usync.js +10 -15
- package/lib/Socket/usync.js.map +1 -0
- package/lib/Types/Auth.d.ts +1 -1
- package/lib/Types/Auth.d.ts.map +1 -0
- package/lib/Types/Auth.js.map +1 -0
- package/lib/Types/Call.d.ts.map +1 -0
- package/lib/Types/Call.js.map +1 -0
- package/lib/Types/Chat.d.ts +4 -1
- package/lib/Types/Chat.d.ts.map +1 -0
- package/lib/Types/Chat.js +7 -1
- package/lib/Types/Chat.js.map +1 -0
- package/lib/Types/Contact.d.ts +4 -0
- package/lib/Types/Contact.d.ts.map +1 -0
- package/lib/Types/Contact.js.map +1 -0
- package/lib/Types/Events.d.ts +34 -1
- package/lib/Types/Events.d.ts.map +1 -0
- package/lib/Types/Events.js.map +1 -0
- package/lib/Types/GroupMetadata.d.ts +10 -3
- package/lib/Types/GroupMetadata.d.ts.map +1 -0
- package/lib/Types/GroupMetadata.js.map +1 -0
- package/lib/Types/Label.d.ts.map +1 -0
- package/lib/Types/Label.js.map +1 -0
- package/lib/Types/LabelAssociation.d.ts.map +1 -0
- package/lib/Types/LabelAssociation.js.map +1 -0
- package/lib/Types/Message.d.ts +12 -2
- package/lib/Types/Message.d.ts.map +1 -0
- package/lib/Types/Message.js.map +1 -0
- package/lib/Types/Newsletter.d.ts +134 -0
- package/lib/Types/Newsletter.d.ts.map +1 -0
- package/lib/Types/Newsletter.js +33 -0
- package/lib/Types/Newsletter.js.map +1 -0
- package/lib/Types/Product.d.ts.map +1 -0
- package/lib/Types/Product.js.map +1 -0
- package/lib/Types/Signal.d.ts.map +1 -0
- package/lib/Types/Signal.js.map +1 -0
- package/lib/Types/Socket.d.ts +3 -3
- package/lib/Types/Socket.d.ts.map +1 -0
- package/lib/Types/Socket.js.map +1 -0
- package/lib/Types/State.d.ts.map +1 -0
- package/lib/Types/State.js.map +1 -0
- package/lib/Types/USync.d.ts.map +1 -0
- package/lib/Types/USync.js.map +1 -0
- package/lib/Types/index.d.ts +1 -0
- package/lib/Types/index.d.ts.map +1 -0
- package/lib/Types/index.js +1 -0
- package/lib/Types/index.js.map +1 -0
- package/lib/Utils/auth-utils.d.ts.map +1 -0
- package/lib/Utils/auth-utils.js +8 -9
- package/lib/Utils/auth-utils.js.map +1 -0
- package/lib/Utils/baileys-event-stream.d.ts.map +1 -0
- package/lib/Utils/baileys-event-stream.js +1 -1
- package/lib/Utils/baileys-event-stream.js.map +1 -0
- package/lib/Utils/business.d.ts.map +1 -0
- package/lib/Utils/business.js +9 -11
- package/lib/Utils/business.js.map +1 -0
- package/lib/Utils/chat-utils.d.ts +4 -4
- package/lib/Utils/chat-utils.d.ts.map +1 -0
- package/lib/Utils/chat-utils.js +78 -70
- package/lib/Utils/chat-utils.js.map +1 -0
- package/lib/Utils/crypto.d.ts.map +1 -0
- package/lib/Utils/crypto.js +4 -10
- package/lib/Utils/crypto.js.map +1 -0
- package/lib/Utils/decode-wa-message.d.ts +3 -4
- package/lib/Utils/decode-wa-message.d.ts.map +1 -0
- package/lib/Utils/decode-wa-message.js +11 -2
- package/lib/Utils/decode-wa-message.js.map +1 -0
- package/lib/Utils/event-buffer.d.ts +2 -2
- package/lib/Utils/event-buffer.d.ts.map +1 -0
- package/lib/Utils/event-buffer.js +9 -13
- package/lib/Utils/event-buffer.js.map +1 -0
- package/lib/Utils/generics.d.ts +2 -1
- package/lib/Utils/generics.d.ts.map +1 -0
- package/lib/Utils/generics.js +32 -30
- package/lib/Utils/generics.js.map +1 -0
- package/lib/Utils/history.d.ts.map +1 -0
- package/lib/Utils/history.js +10 -11
- package/lib/Utils/history.js.map +1 -0
- package/lib/Utils/index.d.ts.map +1 -0
- package/lib/Utils/index.js.map +1 -0
- package/lib/Utils/link-preview.d.ts.map +1 -0
- package/lib/Utils/link-preview.js +9 -10
- package/lib/Utils/link-preview.js.map +1 -0
- package/lib/Utils/logger.d.ts.map +1 -0
- package/lib/Utils/logger.js.map +1 -0
- package/lib/Utils/lt-hash.d.ts.map +1 -0
- package/lib/Utils/lt-hash.js +2 -2
- package/lib/Utils/lt-hash.js.map +1 -0
- package/lib/Utils/make-mutex.d.ts.map +1 -0
- package/lib/Utils/make-mutex.js +1 -1
- package/lib/Utils/make-mutex.js.map +1 -0
- package/lib/Utils/messages-media.d.ts +11 -3
- package/lib/Utils/messages-media.d.ts.map +1 -0
- package/lib/Utils/messages-media.js +108 -90
- package/lib/Utils/messages-media.js.map +1 -0
- package/lib/Utils/messages.d.ts +3 -3
- package/lib/Utils/messages.d.ts.map +1 -0
- package/lib/Utils/messages.js +109 -69
- package/lib/Utils/messages.js.map +1 -0
- package/lib/Utils/noise-handler.d.ts.map +1 -0
- package/lib/Utils/noise-handler.js.map +1 -0
- package/lib/Utils/process-message.d.ts +1 -1
- package/lib/Utils/process-message.d.ts.map +1 -0
- package/lib/Utils/process-message.js +62 -65
- package/lib/Utils/process-message.js.map +1 -0
- package/lib/Utils/signal.d.ts.map +1 -0
- package/lib/Utils/signal.js +9 -7
- package/lib/Utils/signal.js.map +1 -0
- package/lib/Utils/use-multi-file-auth-state.d.ts.map +1 -0
- package/lib/Utils/use-multi-file-auth-state.js +2 -3
- package/lib/Utils/use-multi-file-auth-state.js.map +1 -0
- package/lib/Utils/validate-connection.d.ts.map +1 -0
- package/lib/Utils/validate-connection.js +17 -22
- package/lib/Utils/validate-connection.js.map +1 -0
- package/lib/WABinary/constants.d.ts +4 -4
- package/lib/WABinary/constants.d.ts.map +1 -0
- package/lib/WABinary/constants.js +1271 -8
- package/lib/WABinary/constants.js.map +1 -0
- package/lib/WABinary/decode.d.ts.map +1 -0
- package/lib/WABinary/decode.js +2 -1
- package/lib/WABinary/decode.js.map +1 -0
- package/lib/WABinary/encode.d.ts.map +1 -0
- package/lib/WABinary/encode.js +2 -2
- package/lib/WABinary/encode.js.map +1 -0
- package/lib/WABinary/generic-utils.d.ts.map +1 -0
- package/lib/WABinary/generic-utils.js +1 -1
- package/lib/WABinary/generic-utils.js.map +1 -0
- package/lib/WABinary/index.d.ts.map +1 -0
- package/lib/WABinary/index.js.map +1 -0
- package/lib/WABinary/jid-utils.d.ts.map +1 -0
- package/lib/WABinary/jid-utils.js +8 -11
- package/lib/WABinary/jid-utils.js.map +1 -0
- package/lib/WABinary/types.d.ts.map +1 -0
- package/lib/WABinary/types.js.map +1 -0
- package/lib/WAM/BinaryInfo.d.ts.map +1 -0
- package/lib/WAM/BinaryInfo.js.map +1 -0
- package/lib/WAM/constants.d.ts.map +1 -0
- package/lib/WAM/constants.js +2252 -2359
- package/lib/WAM/constants.js.map +1 -0
- package/lib/WAM/encode.d.ts.map +1 -0
- package/lib/WAM/encode.js +5 -7
- package/lib/WAM/encode.js.map +1 -0
- package/lib/WAM/index.d.ts.map +1 -0
- package/lib/WAM/index.js.map +1 -0
- package/lib/WAUSync/Protocols/USyncContactProtocol.d.ts.map +1 -0
- package/lib/WAUSync/Protocols/USyncContactProtocol.js +2 -2
- package/lib/WAUSync/Protocols/USyncContactProtocol.js.map +1 -0
- package/lib/WAUSync/Protocols/USyncDeviceProtocol.d.ts.map +1 -0
- package/lib/WAUSync/Protocols/USyncDeviceProtocol.js +2 -2
- package/lib/WAUSync/Protocols/USyncDeviceProtocol.js.map +1 -0
- package/lib/WAUSync/Protocols/USyncDisappearingModeProtocol.d.ts.map +1 -0
- package/lib/WAUSync/Protocols/USyncDisappearingModeProtocol.js +3 -3
- package/lib/WAUSync/Protocols/USyncDisappearingModeProtocol.js.map +1 -0
- package/lib/WAUSync/Protocols/USyncStatusProtocol.d.ts.map +1 -0
- package/lib/WAUSync/Protocols/USyncStatusProtocol.js +5 -5
- package/lib/WAUSync/Protocols/USyncStatusProtocol.js.map +1 -0
- package/lib/WAUSync/Protocols/UsyncBotProfileProtocol.d.ts.map +1 -0
- package/lib/WAUSync/Protocols/UsyncBotProfileProtocol.js +1 -1
- package/lib/WAUSync/Protocols/UsyncBotProfileProtocol.js.map +1 -0
- package/lib/WAUSync/Protocols/UsyncLIDProtocol.d.ts.map +1 -0
- package/lib/WAUSync/Protocols/UsyncLIDProtocol.js +1 -1
- package/lib/WAUSync/Protocols/UsyncLIDProtocol.js.map +1 -0
- package/lib/WAUSync/Protocols/index.d.ts.map +1 -0
- package/lib/WAUSync/Protocols/index.js.map +1 -0
- package/lib/WAUSync/USyncQuery.d.ts.map +1 -0
- package/lib/WAUSync/USyncQuery.js +17 -13
- package/lib/WAUSync/USyncQuery.js.map +1 -0
- package/lib/WAUSync/USyncUser.d.ts.map +1 -0
- package/lib/WAUSync/USyncUser.js.map +1 -0
- package/lib/WAUSync/index.d.ts.map +1 -0
- package/lib/WAUSync/index.js.map +1 -0
- package/lib/index.d.ts.map +1 -0
- package/lib/index.js.map +1 -0
- package/package.json +25 -17
- package/WASignalGroup/GroupProtocol.js +0 -1697
- package/WASignalGroup/ciphertext_message.js +0 -16
- package/WASignalGroup/group_cipher.js +0 -120
- package/WASignalGroup/group_session_builder.js +0 -46
- package/WASignalGroup/index.js +0 -5
- package/WASignalGroup/keyhelper.js +0 -21
- package/WASignalGroup/protobufs.js +0 -3
- package/WASignalGroup/queue_job.js +0 -69
- package/WASignalGroup/sender_chain_key.js +0 -50
- package/WASignalGroup/sender_key_distribution_message.js +0 -78
- package/WASignalGroup/sender_key_message.js +0 -92
- package/WASignalGroup/sender_key_name.js +0 -70
- package/WASignalGroup/sender_key_record.js +0 -56
- package/WASignalGroup/sender_key_state.js +0 -129
|
@@ -18,21 +18,24 @@ const messages_send_1 = require("./messages-send");
|
|
|
18
18
|
const makeMessagesRecvSocket = (config) => {
|
|
19
19
|
const { logger, retryRequestDelayMs, maxMsgRetryCount, getMessage, shouldIgnoreJid } = config;
|
|
20
20
|
const sock = (0, messages_send_1.makeMessagesSocket)(config);
|
|
21
|
-
const { ev, authState, ws, processingMutex, signalRepository, query, upsertMessage, resyncAppState, onUnexpectedError, assertSessions, sendNode, relayMessage, sendReceipt, uploadPreKeys, sendPeerDataOperationMessage
|
|
21
|
+
const { ev, authState, ws, processingMutex, signalRepository, query, upsertMessage, resyncAppState, onUnexpectedError, assertSessions, sendNode, relayMessage, sendReceipt, uploadPreKeys, sendPeerDataOperationMessage } = sock;
|
|
22
22
|
/** this mutex ensures that each retryRequest will wait for the previous one to finish */
|
|
23
23
|
const retryMutex = (0, make_mutex_1.makeMutex)();
|
|
24
|
-
const msgRetryCache = config.msgRetryCounterCache ||
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
24
|
+
const msgRetryCache = config.msgRetryCounterCache ||
|
|
25
|
+
new node_cache_1.default({
|
|
26
|
+
stdTTL: Defaults_1.DEFAULT_CACHE_TTLS.MSG_RETRY, // 1 hour
|
|
27
|
+
useClones: false
|
|
28
|
+
});
|
|
29
|
+
const callOfferCache = config.callOfferCache ||
|
|
30
|
+
new node_cache_1.default({
|
|
31
|
+
stdTTL: Defaults_1.DEFAULT_CACHE_TTLS.CALL_OFFER, // 5 mins
|
|
32
|
+
useClones: false
|
|
33
|
+
});
|
|
34
|
+
const placeholderResendCache = config.placeholderResendCache ||
|
|
35
|
+
new node_cache_1.default({
|
|
36
|
+
stdTTL: Defaults_1.DEFAULT_CACHE_TTLS.MSG_RETRY, // 1 hour
|
|
37
|
+
useClones: false
|
|
38
|
+
});
|
|
36
39
|
let sendActiveReceipts = false;
|
|
37
40
|
const sendMessageAck = async ({ tag, attrs, content }, errorCode) => {
|
|
38
41
|
var _a, _b, _c, _d, _e;
|
|
@@ -53,7 +56,8 @@ const makeMessagesRecvSocket = (config) => {
|
|
|
53
56
|
if (!!attrs.recipient) {
|
|
54
57
|
stanza.attrs.recipient = attrs.recipient;
|
|
55
58
|
}
|
|
56
|
-
if (!!attrs.type &&
|
|
59
|
+
if (!!attrs.type &&
|
|
60
|
+
(tag !== 'message' || (0, WABinary_1.getBinaryNodeChild)({ tag, attrs, content }, 'unavailable') || errorCode !== 0)) {
|
|
57
61
|
stanza.attrs.type = attrs.type;
|
|
58
62
|
}
|
|
59
63
|
if (tag === 'message' && (0, WABinary_1.getBinaryNodeChild)({ tag, attrs, content }, 'unavailable')) {
|
|
@@ -85,22 +89,24 @@ const makeMessagesRecvSocket = (config) => {
|
|
|
85
89
|
await sendNode(stanza);
|
|
86
90
|
};
|
|
87
91
|
const rejectCall = async (callId, callFrom) => {
|
|
88
|
-
const stanza =
|
|
92
|
+
const stanza = {
|
|
89
93
|
tag: 'call',
|
|
90
94
|
attrs: {
|
|
91
95
|
from: authState.creds.me.id,
|
|
92
|
-
to: callFrom
|
|
96
|
+
to: callFrom
|
|
93
97
|
},
|
|
94
|
-
content: [
|
|
98
|
+
content: [
|
|
99
|
+
{
|
|
95
100
|
tag: 'reject',
|
|
96
101
|
attrs: {
|
|
97
102
|
'call-id': callId,
|
|
98
103
|
'call-creator': callFrom,
|
|
99
|
-
count: '0'
|
|
104
|
+
count: '0'
|
|
100
105
|
},
|
|
101
|
-
content: undefined
|
|
102
|
-
}
|
|
103
|
-
|
|
106
|
+
content: undefined
|
|
107
|
+
}
|
|
108
|
+
]
|
|
109
|
+
};
|
|
104
110
|
await query(stanza);
|
|
105
111
|
};
|
|
106
112
|
const sendRetryRequest = async (node, forceIncludeKeys = false) => {
|
|
@@ -208,15 +214,19 @@ const makeMessagesRecvSocket = (config) => {
|
|
|
208
214
|
msg.messageStubType = Types_1.WAMessageStubType.GROUP_CREATE;
|
|
209
215
|
msg.messageStubParameters = [metadata.subject];
|
|
210
216
|
msg.key = { participant: metadata.owner };
|
|
211
|
-
ev.emit('chats.upsert', [
|
|
217
|
+
ev.emit('chats.upsert', [
|
|
218
|
+
{
|
|
212
219
|
id: metadata.id,
|
|
213
220
|
name: metadata.subject,
|
|
214
|
-
conversationTimestamp: metadata.creation
|
|
215
|
-
}
|
|
216
|
-
|
|
221
|
+
conversationTimestamp: metadata.creation
|
|
222
|
+
}
|
|
223
|
+
]);
|
|
224
|
+
ev.emit('groups.upsert', [
|
|
225
|
+
{
|
|
217
226
|
...metadata,
|
|
218
227
|
author: participant
|
|
219
|
-
}
|
|
228
|
+
}
|
|
229
|
+
]);
|
|
220
230
|
break;
|
|
221
231
|
case 'ephemeral':
|
|
222
232
|
case 'not_ephemeral':
|
|
@@ -261,12 +271,12 @@ const makeMessagesRecvSocket = (config) => {
|
|
|
261
271
|
case 'announcement':
|
|
262
272
|
case 'not_announcement':
|
|
263
273
|
msg.messageStubType = Types_1.WAMessageStubType.GROUP_CHANGE_ANNOUNCE;
|
|
264
|
-
msg.messageStubParameters = [
|
|
274
|
+
msg.messageStubParameters = [child.tag === 'announcement' ? 'on' : 'off'];
|
|
265
275
|
break;
|
|
266
276
|
case 'locked':
|
|
267
277
|
case 'unlocked':
|
|
268
278
|
msg.messageStubType = Types_1.WAMessageStubType.GROUP_CHANGE_RESTRICT;
|
|
269
|
-
msg.messageStubParameters = [
|
|
279
|
+
msg.messageStubParameters = [child.tag === 'locked' ? 'on' : 'off'];
|
|
270
280
|
break;
|
|
271
281
|
case 'invite':
|
|
272
282
|
msg.messageStubType = Types_1.WAMessageStubType.GROUP_CHANGE_INVITE_LINK;
|
|
@@ -317,6 +327,12 @@ const makeMessagesRecvSocket = (config) => {
|
|
|
317
327
|
logger.debug({ jid }, 'got privacy token update');
|
|
318
328
|
}
|
|
319
329
|
break;
|
|
330
|
+
case 'newsletter':
|
|
331
|
+
await handleNewsletterNotification(node);
|
|
332
|
+
break;
|
|
333
|
+
case 'mex':
|
|
334
|
+
await handleMexNewsletterNotification(node);
|
|
335
|
+
break;
|
|
320
336
|
case 'w:gp2':
|
|
321
337
|
handleGroupNotification(node.attrs.participant, child, result);
|
|
322
338
|
break;
|
|
@@ -344,10 +360,12 @@ const makeMessagesRecvSocket = (config) => {
|
|
|
344
360
|
case 'picture':
|
|
345
361
|
const setPicture = (0, WABinary_1.getBinaryNodeChild)(node, 'set');
|
|
346
362
|
const delPicture = (0, WABinary_1.getBinaryNodeChild)(node, 'delete');
|
|
347
|
-
ev.emit('contacts.update', [
|
|
363
|
+
ev.emit('contacts.update', [
|
|
364
|
+
{
|
|
348
365
|
id: (0, WABinary_1.jidNormalizedUser)((_a = node === null || node === void 0 ? void 0 : node.attrs) === null || _a === void 0 ? void 0 : _a.from) || ((_c = (_b = (setPicture || delPicture)) === null || _b === void 0 ? void 0 : _b.attrs) === null || _c === void 0 ? void 0 : _c.hash) || '',
|
|
349
366
|
imgUrl: setPicture ? 'changed' : 'removed'
|
|
350
|
-
}
|
|
367
|
+
}
|
|
368
|
+
]);
|
|
351
369
|
if ((0, WABinary_1.isJidGroup)(from)) {
|
|
352
370
|
const node = setPicture || delPicture;
|
|
353
371
|
result.messageStubType = Types_1.WAMessageStubType.GROUP_CHANGE_ICON;
|
|
@@ -356,7 +374,7 @@ const makeMessagesRecvSocket = (config) => {
|
|
|
356
374
|
}
|
|
357
375
|
result.participant = node === null || node === void 0 ? void 0 : node.attrs.author;
|
|
358
376
|
result.key = {
|
|
359
|
-
...result.key || {},
|
|
377
|
+
...(result.key || {}),
|
|
360
378
|
participant: setPicture === null || setPicture === void 0 ? void 0 : setPicture.attrs.author
|
|
361
379
|
};
|
|
362
380
|
}
|
|
@@ -371,8 +389,8 @@ const makeMessagesRecvSocket = (config) => {
|
|
|
371
389
|
...authState.creds.accountSettings,
|
|
372
390
|
defaultDisappearingMode: {
|
|
373
391
|
ephemeralExpiration: newDuration,
|
|
374
|
-
ephemeralSettingTimestamp: timestamp
|
|
375
|
-
}
|
|
392
|
+
ephemeralSettingTimestamp: timestamp
|
|
393
|
+
}
|
|
376
394
|
}
|
|
377
395
|
});
|
|
378
396
|
}
|
|
@@ -380,7 +398,7 @@ const makeMessagesRecvSocket = (config) => {
|
|
|
380
398
|
const blocklists = (0, WABinary_1.getBinaryNodeChildren)(child, 'item');
|
|
381
399
|
for (const { attrs } of blocklists) {
|
|
382
400
|
const blocklist = [attrs.jid];
|
|
383
|
-
const type =
|
|
401
|
+
const type = attrs.action === 'block' ? 'add' : 'remove';
|
|
384
402
|
ev.emit('blocklist.update', { blocklist, type });
|
|
385
403
|
}
|
|
386
404
|
}
|
|
@@ -398,7 +416,11 @@ const makeMessagesRecvSocket = (config) => {
|
|
|
398
416
|
salt: linkCodeSalt,
|
|
399
417
|
info: 'link_code_pairing_key_bundle_encryption_key'
|
|
400
418
|
});
|
|
401
|
-
const encryptPayload = Buffer.concat([
|
|
419
|
+
const encryptPayload = Buffer.concat([
|
|
420
|
+
Buffer.from(authState.creds.signedIdentityKey.public),
|
|
421
|
+
primaryIdentityPublicKey,
|
|
422
|
+
random
|
|
423
|
+
]);
|
|
402
424
|
const encryptIv = (0, crypto_1.randomBytes)(12);
|
|
403
425
|
const encrypted = (0, Utils_1.aesEncryptGCM)(encryptPayload, linkCodePairingExpanded, encryptIv, Buffer.alloc(0));
|
|
404
426
|
const encryptedPayload = Buffer.concat([linkCodeSalt, encryptIv, encrypted]);
|
|
@@ -418,7 +440,7 @@ const makeMessagesRecvSocket = (config) => {
|
|
|
418
440
|
tag: 'link_code_companion_reg',
|
|
419
441
|
attrs: {
|
|
420
442
|
jid: authState.creds.me.id,
|
|
421
|
-
stage: 'companion_finish'
|
|
443
|
+
stage: 'companion_finish'
|
|
422
444
|
},
|
|
423
445
|
content: [
|
|
424
446
|
{
|
|
@@ -512,8 +534,7 @@ const makeMessagesRecvSocket = (config) => {
|
|
|
512
534
|
const isLid = attrs.from.includes('lid');
|
|
513
535
|
const isNodeFromMe = (0, WABinary_1.areJidsSameUser)(attrs.participant || attrs.from, isLid ? (_a = authState.creds.me) === null || _a === void 0 ? void 0 : _a.lid : (_b = authState.creds.me) === null || _b === void 0 ? void 0 : _b.id);
|
|
514
536
|
const remoteJid = !isNodeFromMe || (0, WABinary_1.isJidGroup)(attrs.from) ? attrs.from : attrs.recipient;
|
|
515
|
-
const fromMe = !attrs.recipient || ((attrs.type === 'retry' || attrs.type === 'sender')
|
|
516
|
-
&& isNodeFromMe);
|
|
537
|
+
const fromMe = !attrs.recipient || ((attrs.type === 'retry' || attrs.type === 'sender') && isNodeFromMe);
|
|
517
538
|
const key = {
|
|
518
539
|
remoteJid,
|
|
519
540
|
id: '',
|
|
@@ -533,16 +554,15 @@ const makeMessagesRecvSocket = (config) => {
|
|
|
533
554
|
try {
|
|
534
555
|
await Promise.all([
|
|
535
556
|
processingMutex.mutex(async () => {
|
|
557
|
+
var _a, _b, _c;
|
|
536
558
|
const status = (0, Utils_1.getStatusFromReceiptType)(attrs.type);
|
|
537
559
|
if (typeof status !== 'undefined' &&
|
|
538
|
-
(
|
|
539
560
|
// basically, we only want to know when a message from us has been delivered to/read by the other person
|
|
540
561
|
// or another device of ours has read some messages
|
|
541
|
-
status >= WAProto_1.proto.WebMessageInfo.Status.SERVER_ACK ||
|
|
542
|
-
!isNodeFromMe)) {
|
|
562
|
+
(status >= WAProto_1.proto.WebMessageInfo.Status.SERVER_ACK || !isNodeFromMe)) {
|
|
543
563
|
if ((0, WABinary_1.isJidGroup)(remoteJid) || (0, WABinary_1.isJidStatusBroadcast)(remoteJid)) {
|
|
564
|
+
const updateKey = status === WAProto_1.proto.WebMessageInfo.Status.DELIVERY_ACK ? 'receiptTimestamp' : 'readTimestamp';
|
|
544
565
|
if (attrs.participant) {
|
|
545
|
-
const updateKey = status === WAProto_1.proto.WebMessageInfo.Status.DELIVERY_ACK ? 'receiptTimestamp' : 'readTimestamp';
|
|
546
566
|
ev.emit('message-receipt.update', ids.map(id => ({
|
|
547
567
|
key: { ...key, id },
|
|
548
568
|
receipt: {
|
|
@@ -551,6 +571,19 @@ const makeMessagesRecvSocket = (config) => {
|
|
|
551
571
|
}
|
|
552
572
|
})));
|
|
553
573
|
}
|
|
574
|
+
if (Array.isArray(content)) {
|
|
575
|
+
const group_receipt = (_a = content[0]) === null || _a === void 0 ? void 0 : _a.content;
|
|
576
|
+
const id = (_c = (_b = content[0]) === null || _b === void 0 ? void 0 : _b.attrs) === null || _c === void 0 ? void 0 : _c.key;
|
|
577
|
+
if (id && group_receipt && Array.isArray(group_receipt)) {
|
|
578
|
+
ev.emit('message-receipt.update', group_receipt.map(item => ({
|
|
579
|
+
key: { ...key, id },
|
|
580
|
+
receipt: {
|
|
581
|
+
userJid: (0, WABinary_1.jidNormalizedUser)(item.attrs.jid),
|
|
582
|
+
[updateKey]: +item.attrs.t
|
|
583
|
+
}
|
|
584
|
+
})));
|
|
585
|
+
}
|
|
586
|
+
}
|
|
554
587
|
}
|
|
555
588
|
else {
|
|
556
589
|
ev.emit('messages.update', ids.map(id => ({
|
|
@@ -659,7 +692,8 @@ const makeMessagesRecvSocket = (config) => {
|
|
|
659
692
|
if (response && ((_a = msg === null || msg === void 0 ? void 0 : msg.messageStubParameters) === null || _a === void 0 ? void 0 : _a[0]) === Utils_1.NO_MESSAGE_FOUND_ERROR_TEXT) {
|
|
660
693
|
msg.messageStubParameters = [Utils_1.NO_MESSAGE_FOUND_ERROR_TEXT, response];
|
|
661
694
|
}
|
|
662
|
-
if (((_c = (_b = msg.message) === null || _b === void 0 ? void 0 : _b.protocolMessage) === null || _c === void 0 ? void 0 : _c.type) === WAProto_1.proto.Message.ProtocolMessage.Type.SHARE_PHONE_NUMBER &&
|
|
695
|
+
if (((_c = (_b = msg.message) === null || _b === void 0 ? void 0 : _b.protocolMessage) === null || _c === void 0 ? void 0 : _c.type) === WAProto_1.proto.Message.ProtocolMessage.Type.SHARE_PHONE_NUMBER &&
|
|
696
|
+
node.attrs.sender_pn) {
|
|
663
697
|
ev.emit('chats.phoneNumberShare', { lid: node.attrs.from, jid: node.attrs.sender_pn });
|
|
664
698
|
}
|
|
665
699
|
try {
|
|
@@ -692,10 +726,12 @@ const makeMessagesRecvSocket = (config) => {
|
|
|
692
726
|
// no type in the receipt => message delivered
|
|
693
727
|
let type = undefined;
|
|
694
728
|
let participant = msg.key.participant;
|
|
695
|
-
if (category === 'peer') {
|
|
729
|
+
if (category === 'peer') {
|
|
730
|
+
// special peer message
|
|
696
731
|
type = 'peer_msg';
|
|
697
732
|
}
|
|
698
|
-
else if (msg.key.fromMe) {
|
|
733
|
+
else if (msg.key.fromMe) {
|
|
734
|
+
// message was sent by us from a different device
|
|
699
735
|
type = 'sender';
|
|
700
736
|
// need to specially handle this case
|
|
701
737
|
if ((0, WABinary_1.isJidUser)(msg.key.remoteJid)) {
|
|
@@ -758,9 +794,11 @@ const makeMessagesRecvSocket = (config) => {
|
|
|
758
794
|
return 'RESOLVED';
|
|
759
795
|
}
|
|
760
796
|
const pdoMessage = {
|
|
761
|
-
placeholderMessageResendRequest: [
|
|
797
|
+
placeholderMessageResendRequest: [
|
|
798
|
+
{
|
|
762
799
|
messageKey
|
|
763
|
-
}
|
|
800
|
+
}
|
|
801
|
+
],
|
|
764
802
|
peerDataOperationRequestType: WAProto_1.proto.Message.PeerDataOperationRequestType.PLACEHOLDER_MESSAGE_RESEND
|
|
765
803
|
};
|
|
766
804
|
setTimeout(() => {
|
|
@@ -783,7 +821,7 @@ const makeMessagesRecvSocket = (config) => {
|
|
|
783
821
|
id: callId,
|
|
784
822
|
date: new Date(+attrs.t * 1000),
|
|
785
823
|
offline: !!attrs.offline,
|
|
786
|
-
status
|
|
824
|
+
status
|
|
787
825
|
};
|
|
788
826
|
if (status === 'offer') {
|
|
789
827
|
call.isVideo = !!(0, WABinary_1.getBinaryNodeChild)(infoChild, 'video');
|
|
@@ -828,9 +866,7 @@ const makeMessagesRecvSocket = (config) => {
|
|
|
828
866
|
key,
|
|
829
867
|
update: {
|
|
830
868
|
status: Types_1.WAMessageStatus.ERROR,
|
|
831
|
-
messageStubParameters: [
|
|
832
|
-
attrs.error
|
|
833
|
-
]
|
|
869
|
+
messageStubParameters: [attrs.error]
|
|
834
870
|
}
|
|
835
871
|
}
|
|
836
872
|
]);
|
|
@@ -843,8 +879,7 @@ const makeMessagesRecvSocket = (config) => {
|
|
|
843
879
|
await execTask();
|
|
844
880
|
ev.flush();
|
|
845
881
|
function execTask() {
|
|
846
|
-
return exec(node, false)
|
|
847
|
-
.catch(err => onUnexpectedError(err, identifier));
|
|
882
|
+
return exec(node, false).catch(err => onUnexpectedError(err, identifier));
|
|
848
883
|
}
|
|
849
884
|
};
|
|
850
885
|
const makeOfflineNodeProcessor = () => {
|
|
@@ -888,6 +923,140 @@ const makeMessagesRecvSocket = (config) => {
|
|
|
888
923
|
processNodeWithBuffer(node, identifier, exec);
|
|
889
924
|
}
|
|
890
925
|
};
|
|
926
|
+
// Handles newsletter notifications
|
|
927
|
+
async function handleNewsletterNotification(node) {
|
|
928
|
+
var _a;
|
|
929
|
+
const from = node.attrs.from;
|
|
930
|
+
const [child] = (0, WABinary_1.getAllBinaryNodeChildren)(node);
|
|
931
|
+
const author = node.attrs.participant;
|
|
932
|
+
logger.info({ from, child }, 'got newsletter notification');
|
|
933
|
+
switch (child.tag) {
|
|
934
|
+
case 'reaction':
|
|
935
|
+
const reactionUpdate = {
|
|
936
|
+
id: from,
|
|
937
|
+
server_id: child.attrs.message_id,
|
|
938
|
+
reaction: {
|
|
939
|
+
code: (0, WABinary_1.getBinaryNodeChildString)(child, 'reaction'),
|
|
940
|
+
count: 1
|
|
941
|
+
}
|
|
942
|
+
};
|
|
943
|
+
ev.emit('newsletter.reaction', reactionUpdate);
|
|
944
|
+
break;
|
|
945
|
+
case 'view':
|
|
946
|
+
const viewUpdate = {
|
|
947
|
+
id: from,
|
|
948
|
+
server_id: child.attrs.message_id,
|
|
949
|
+
count: parseInt(((_a = child.content) === null || _a === void 0 ? void 0 : _a.toString()) || '0', 10)
|
|
950
|
+
};
|
|
951
|
+
ev.emit('newsletter.view', viewUpdate);
|
|
952
|
+
break;
|
|
953
|
+
case 'participant':
|
|
954
|
+
const participantUpdate = {
|
|
955
|
+
id: from,
|
|
956
|
+
author,
|
|
957
|
+
user: child.attrs.jid,
|
|
958
|
+
action: child.attrs.action,
|
|
959
|
+
new_role: child.attrs.role
|
|
960
|
+
};
|
|
961
|
+
ev.emit('newsletter-participants.update', participantUpdate);
|
|
962
|
+
break;
|
|
963
|
+
case 'update':
|
|
964
|
+
const settingsNode = (0, WABinary_1.getBinaryNodeChild)(child, 'settings');
|
|
965
|
+
if (settingsNode) {
|
|
966
|
+
const update = {};
|
|
967
|
+
const nameNode = (0, WABinary_1.getBinaryNodeChild)(settingsNode, 'name');
|
|
968
|
+
if (nameNode === null || nameNode === void 0 ? void 0 : nameNode.content)
|
|
969
|
+
update.name = nameNode.content.toString();
|
|
970
|
+
const descriptionNode = (0, WABinary_1.getBinaryNodeChild)(settingsNode, 'description');
|
|
971
|
+
if (descriptionNode === null || descriptionNode === void 0 ? void 0 : descriptionNode.content)
|
|
972
|
+
update.description = descriptionNode.content.toString();
|
|
973
|
+
ev.emit('newsletter-settings.update', {
|
|
974
|
+
id: from,
|
|
975
|
+
update
|
|
976
|
+
});
|
|
977
|
+
}
|
|
978
|
+
break;
|
|
979
|
+
case 'message':
|
|
980
|
+
const plaintextNode = (0, WABinary_1.getBinaryNodeChild)(child, 'plaintext');
|
|
981
|
+
if (plaintextNode === null || plaintextNode === void 0 ? void 0 : plaintextNode.content) {
|
|
982
|
+
try {
|
|
983
|
+
const contentBuf = typeof plaintextNode.content === 'string'
|
|
984
|
+
? Buffer.from(plaintextNode.content, 'binary')
|
|
985
|
+
: Buffer.from(plaintextNode.content);
|
|
986
|
+
const messageProto = WAProto_1.proto.Message.decode(contentBuf);
|
|
987
|
+
const fullMessage = WAProto_1.proto.WebMessageInfo.fromObject({
|
|
988
|
+
key: {
|
|
989
|
+
remoteJid: from,
|
|
990
|
+
id: child.attrs.message_id || child.attrs.server_id,
|
|
991
|
+
fromMe: false
|
|
992
|
+
},
|
|
993
|
+
message: messageProto,
|
|
994
|
+
messageTimestamp: +child.attrs.t
|
|
995
|
+
});
|
|
996
|
+
await upsertMessage(fullMessage, 'append');
|
|
997
|
+
logger.info('Processed plaintext newsletter message');
|
|
998
|
+
}
|
|
999
|
+
catch (error) {
|
|
1000
|
+
logger.error({ error }, 'Failed to decode plaintext newsletter message');
|
|
1001
|
+
}
|
|
1002
|
+
}
|
|
1003
|
+
break;
|
|
1004
|
+
default:
|
|
1005
|
+
logger.warn({ node }, 'Unknown newsletter notification');
|
|
1006
|
+
break;
|
|
1007
|
+
}
|
|
1008
|
+
}
|
|
1009
|
+
// Handles mex newsletter notifications
|
|
1010
|
+
async function handleMexNewsletterNotification(node) {
|
|
1011
|
+
const mexNode = (0, WABinary_1.getBinaryNodeChild)(node, 'mex');
|
|
1012
|
+
if (!(mexNode === null || mexNode === void 0 ? void 0 : mexNode.content)) {
|
|
1013
|
+
logger.warn({ node }, 'Invalid mex newsletter notification');
|
|
1014
|
+
return;
|
|
1015
|
+
}
|
|
1016
|
+
let data;
|
|
1017
|
+
try {
|
|
1018
|
+
data = JSON.parse(mexNode.content.toString());
|
|
1019
|
+
}
|
|
1020
|
+
catch (error) {
|
|
1021
|
+
logger.error({ err: error, node }, 'Failed to parse mex newsletter notification');
|
|
1022
|
+
return;
|
|
1023
|
+
}
|
|
1024
|
+
const operation = data === null || data === void 0 ? void 0 : data.operation;
|
|
1025
|
+
const updates = data === null || data === void 0 ? void 0 : data.updates;
|
|
1026
|
+
if (!updates || !operation) {
|
|
1027
|
+
logger.warn({ data }, 'Invalid mex newsletter notification content');
|
|
1028
|
+
return;
|
|
1029
|
+
}
|
|
1030
|
+
logger.info({ operation, updates }, 'got mex newsletter notification');
|
|
1031
|
+
switch (operation) {
|
|
1032
|
+
case 'NotificationNewsletterUpdate':
|
|
1033
|
+
for (const update of updates) {
|
|
1034
|
+
if (update.jid && update.settings && Object.keys(update.settings).length > 0) {
|
|
1035
|
+
ev.emit('newsletter-settings.update', {
|
|
1036
|
+
id: update.jid,
|
|
1037
|
+
update: update.settings
|
|
1038
|
+
});
|
|
1039
|
+
}
|
|
1040
|
+
}
|
|
1041
|
+
break;
|
|
1042
|
+
case 'NotificationNewsletterAdminPromote':
|
|
1043
|
+
for (const update of updates) {
|
|
1044
|
+
if (update.jid && update.user) {
|
|
1045
|
+
ev.emit('newsletter-participants.update', {
|
|
1046
|
+
id: update.jid,
|
|
1047
|
+
author: node.attrs.from,
|
|
1048
|
+
user: update.user,
|
|
1049
|
+
new_role: 'ADMIN',
|
|
1050
|
+
action: 'promote'
|
|
1051
|
+
});
|
|
1052
|
+
}
|
|
1053
|
+
}
|
|
1054
|
+
break;
|
|
1055
|
+
default:
|
|
1056
|
+
logger.info({ operation, data }, 'Unhandled mex newsletter notification');
|
|
1057
|
+
break;
|
|
1058
|
+
}
|
|
1059
|
+
}
|
|
891
1060
|
// recv a message
|
|
892
1061
|
ws.on('CB:message', (node) => {
|
|
893
1062
|
processNode('message', node, 'processing message', handleMessage);
|
|
@@ -902,8 +1071,7 @@ const makeMessagesRecvSocket = (config) => {
|
|
|
902
1071
|
processNode('notification', node, 'handling notification', handleNotification);
|
|
903
1072
|
});
|
|
904
1073
|
ws.on('CB:ack,class:message', (node) => {
|
|
905
|
-
handleBadAck(node)
|
|
906
|
-
.catch(error => onUnexpectedError(error, 'handling bad ack'));
|
|
1074
|
+
handleBadAck(node).catch(error => onUnexpectedError(error, 'handling bad ack'));
|
|
907
1075
|
});
|
|
908
1076
|
ev.on('call', ([call]) => {
|
|
909
1077
|
// missed call + group call notification message generation
|
|
@@ -914,11 +1082,13 @@ const makeMessagesRecvSocket = (config) => {
|
|
|
914
1082
|
id: call.id,
|
|
915
1083
|
fromMe: false
|
|
916
1084
|
},
|
|
917
|
-
messageTimestamp: (0, Utils_1.unixTimestampSeconds)(call.date)
|
|
1085
|
+
messageTimestamp: (0, Utils_1.unixTimestampSeconds)(call.date)
|
|
918
1086
|
};
|
|
919
1087
|
if (call.status === 'timeout') {
|
|
920
1088
|
if (call.isGroup) {
|
|
921
|
-
msg.messageStubType = call.isVideo
|
|
1089
|
+
msg.messageStubType = call.isVideo
|
|
1090
|
+
? Types_1.WAMessageStubType.CALL_MISSED_GROUP_VIDEO
|
|
1091
|
+
: Types_1.WAMessageStubType.CALL_MISSED_GROUP_VOICE;
|
|
922
1092
|
}
|
|
923
1093
|
else {
|
|
924
1094
|
msg.messageStubType = call.isVideo ? Types_1.WAMessageStubType.CALL_MISSED_VIDEO : Types_1.WAMessageStubType.CALL_MISSED_VOICE;
|
|
@@ -943,7 +1113,7 @@ const makeMessagesRecvSocket = (config) => {
|
|
|
943
1113
|
sendRetryRequest,
|
|
944
1114
|
rejectCall,
|
|
945
1115
|
fetchMessageHistory,
|
|
946
|
-
requestPlaceholderResend
|
|
1116
|
+
requestPlaceholderResend
|
|
947
1117
|
};
|
|
948
1118
|
};
|
|
949
1119
|
exports.makeMessagesRecvSocket = makeMessagesRecvSocket;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"messages-recv.js","sourceRoot":"","sources":["../../src/Socket/messages-recv.ts"],"names":[],"mappings":"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"}
|