@badzz88/baileys 8.4.9 → 8.5.1
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 +1 -1
- package/WAProto/WAProto.proto +6 -347
- package/WAProto/fix-imports.js +85 -86
- package/WAProto/index.d.ts +25 -4913
- package/WAProto/index.js +93 -14069
- package/{src → lib}/Defaults/index.js +2 -13
- package/{src → lib}/Signal/Group/group_cipher.js +5 -5
- package/{src → lib}/Signal/Group/keyhelper.js +4 -4
- package/{src → lib}/Signal/Group/sender-chain-key.js +2 -2
- package/{src → lib}/Signal/Group/sender-key-distribution-message.js +1 -1
- package/{src → lib}/Signal/Group/sender-key-message.js +3 -3
- package/{src → lib}/Signal/Group/sender-key-record.js +1 -1
- package/{src → lib}/Signal/Group/sender-message-key.js +2 -2
- package/{src → lib}/Signal/libsignal.js +26 -6
- package/{src → lib}/Socket/chats.js +58 -616
- package/{src → lib}/Socket/communities.js +28 -59
- package/{src → lib}/Socket/graphql.js +103 -362
- package/{src → lib}/Socket/groups.js +29 -77
- package/{src → lib}/Socket/index.js +5 -3
- package/{src → lib}/Socket/interactive-handler.js +60 -117
- package/{src → lib}/Socket/interop.js +19 -36
- package/lib/Socket/luxu.js +387 -0
- package/{src → lib}/Socket/managed-account.js +27 -58
- package/{src → lib}/Socket/messages-recv.js +144 -715
- package/{src → lib}/Socket/messages-send.js +102 -412
- package/lib/Socket/mex.js +60 -0
- package/{src → lib}/Socket/newsletter.js +23 -266
- package/{src → lib}/Socket/privacy.js +38 -41
- package/{src → lib}/Socket/registration.js +106 -113
- package/{src → lib}/Socket/socket.js +101 -88
- package/{src → lib}/Socket/text-router.js +17 -1
- package/lib/Socket/username.js +243 -0
- package/lib/Store/keyed-db.js +108 -0
- package/{src → lib}/Store/make-in-memory-store.js +104 -6
- package/lib/Types/Mex.js +112 -0
- package/{src → lib}/Types/Newsletter.js +41 -72
- package/{src → lib}/Types/index.js +1 -0
- package/{src → lib}/Utils/chat-utils.js +9 -73
- package/lib/Utils/command-loader.d.ts +31 -0
- package/lib/Utils/command-loader.js +100 -0
- package/lib/Utils/companion-reg-client-utils.js +42 -0
- package/lib/Utils/crypto.js +155 -0
- package/lib/Utils/curve25519-js.js +275 -0
- package/{src → lib}/Utils/decode-wa-message.js +36 -284
- package/{src → lib}/Utils/event-buffer.js +27 -6
- package/{src → lib}/Utils/generics.js +37 -114
- package/{src → lib}/Utils/index.js +5 -1
- package/lib/Utils/lt-hash.js +39 -0
- package/{src → lib}/Utils/message-retry-manager.js +39 -0
- package/{src → lib}/Utils/messages-media.js +58 -105
- package/{src → lib}/Utils/messages.js +529 -115
- package/lib/Utils/meta-ai-msmsg.js +262 -0
- package/lib/Utils/native-bridge.js +82 -0
- package/{src → lib}/Utils/noise-handler.js +15 -13
- package/{src → lib}/Utils/process-message.js +55 -54
- package/{src → lib}/Utils/reporting-utils.js +2 -2
- package/lib/Utils/session-pool.d.ts +16 -0
- package/lib/Utils/session-pool.js +94 -0
- package/{src → lib}/Utils/signal.js +51 -19
- package/{src → lib}/Utils/stanza-ack.js +2 -36
- package/lib/Utils/sticker.d.ts +17 -0
- package/lib/Utils/sticker.js +145 -0
- package/{src → lib}/Utils/tc-token-utils.js +1 -1
- package/{src → lib}/Utils/validate-connection.js +11 -40
- package/lib/Utils/view-once-cache.d.ts +9 -0
- package/lib/Utils/view-once-cache.js +79 -0
- package/{src → lib}/WABinary/decode.js +4 -38
- package/lib/WABinary/encode.js +228 -0
- package/{src → lib}/WABinary/generic-utils.js +93 -1
- package/{src → lib}/WABinary/jid-utils.js +3 -16
- package/{src → lib}/WAM/encode.js +1 -1
- package/lib/WAUSync/Protocols/USyncBusinessProtocol.js +43 -0
- package/{src → lib}/WAUSync/Protocols/USyncContactProtocol.js +1 -7
- package/{src → lib}/WAUSync/Protocols/USyncDeviceProtocol.js +5 -13
- package/{src → lib}/WAUSync/Protocols/USyncDisappearingModeProtocol.js +4 -1
- package/{src → lib}/WAUSync/Protocols/USyncFeatureProtocol.js +2 -17
- package/{src → lib}/WAUSync/Protocols/USyncStatusProtocol.js +2 -7
- package/{src → lib}/WAUSync/Protocols/USyncUsernameProtocol.js +1 -2
- package/{src → lib}/WAUSync/Protocols/index.js +0 -1
- package/{src → lib}/WAUSync/USyncQuery.js +6 -77
- package/{src → lib}/WAUSync/USyncUser.js +8 -16
- package/{src → lib}/WAUSync/index.js +0 -1
- package/{src → lib}/antiban.js +266 -355
- package/{src → lib}/index.js +2 -2
- package/package.json +19 -16
- package/WAProto/fix-import.js +0 -38
- package/src/Socket/mex.js +0 -47
- package/src/Socket/username.js +0 -234
- package/src/Utils/crypto.js +0 -125
- package/src/Utils/lt-hash.js +0 -10
- package/src/Utils/message-inspect.js +0 -400
- package/src/Utils/meta-ai-msmsg.js +0 -133
- package/src/WABinary/encode.js +0 -58
- package/src/WAUSync/Protocols/USyncBusinessProtocol.js +0 -100
- package/src/WAUSync/USyncBackoff.js +0 -31
- /package/{src → lib}/Defaults/phonenumber-mcc.json +0 -0
- /package/{src → lib}/Signal/Group/ciphertext-message.js +0 -0
- /package/{src → lib}/Signal/Group/group-session-builder.js +0 -0
- /package/{src → lib}/Signal/Group/index.js +0 -0
- /package/{src → lib}/Signal/Group/sender-key-name.js +0 -0
- /package/{src → lib}/Signal/Group/sender-key-state.js +0 -0
- /package/{src → lib}/Signal/lid-mapping.js +0 -0
- /package/{src → lib}/Socket/Client/index.js +0 -0
- /package/{src → lib}/Socket/Client/types.js +0 -0
- /package/{src → lib}/Socket/Client/websocket.js +0 -0
- /package/{src → lib}/Socket/aigroups.js +0 -0
- /package/{src → lib}/Socket/business.js +0 -0
- /package/{src → lib}/Store/index.js +0 -0
- /package/{src → lib}/Store/make-cache-manager-store.js +0 -0
- /package/{src → lib}/Store/make-ordered-dictionary.js +0 -0
- /package/{src → lib}/Store/object-repository.js +0 -0
- /package/{src → lib}/Types/Auth.js +0 -0
- /package/{src → lib}/Types/Bussines.js +0 -0
- /package/{src → lib}/Types/Call.js +0 -0
- /package/{src → lib}/Types/Chat.js +0 -0
- /package/{src → lib}/Types/Contact.js +0 -0
- /package/{src → lib}/Types/Events.js +0 -0
- /package/{src → lib}/Types/GroupMetadata.js +0 -0
- /package/{src → lib}/Types/Label.js +0 -0
- /package/{src → lib}/Types/LabelAssociation.js +0 -0
- /package/{src → lib}/Types/Message.js +0 -0
- /package/{src → lib}/Types/Product.js +0 -0
- /package/{src → lib}/Types/Signal.js +0 -0
- /package/{src → lib}/Types/Socket.js +0 -0
- /package/{src → lib}/Types/State.js +0 -0
- /package/{src → lib}/Types/USync.js +0 -0
- /package/{src → lib}/Utils/auth-utils.js +0 -0
- /package/{src → lib}/Utils/browser-utils.js +0 -0
- /package/{src → lib}/Utils/business.js +0 -0
- /package/{src → lib}/Utils/consumer-application.js +0 -0
- /package/{src → lib}/Utils/group-history.js +0 -0
- /package/{src → lib}/Utils/history.js +0 -0
- /package/{src → lib}/Utils/identity-change-handler.js +0 -0
- /package/{src → lib}/Utils/jid-display-normalization.js +0 -0
- /package/{src → lib}/Utils/link-preview.js +0 -0
- /package/{src → lib}/Utils/logger.js +0 -0
- /package/{src → lib}/Utils/make-mutex.js +0 -0
- /package/{src → lib}/Utils/message-composer.js +0 -0
- /package/{src → lib}/Utils/offline-node-processor.js +0 -0
- /package/{src → lib}/Utils/pre-key-manager.js +0 -0
- /package/{src → lib}/Utils/sync-action-utils.js +0 -0
- /package/{src → lib}/Utils/use-multi-file-auth-state.js +0 -0
- /package/{src → lib}/Utils/voip-rekey.js +0 -0
- /package/{src → lib}/WABinary/constants.js +0 -0
- /package/{src → lib}/WABinary/index.js +0 -0
- /package/{src → lib}/WABinary/types.js +0 -0
- /package/{src → lib}/WAM/BinaryInfo.js +0 -0
- /package/{src → lib}/WAM/constants.js +0 -0
- /package/{src → lib}/WAM/index.js +0 -0
- /package/{src → lib}/WAUSync/Protocols/USyncBotProfileProtocol.js +0 -0
- /package/{src → lib}/WAUSync/Protocols/USyncLIDProtocol.js +0 -0
- /package/{src → lib}/WAUSync/Protocols/USyncPictureProtocol.js +0 -0
- /package/{src → lib}/WAUSync/Protocols/USyncSidelistProtocol.js +0 -0
- /package/{src → lib}/WAUSync/Protocols/USyncTextStatusProtocol.js +0 -0
|
@@ -382,12 +382,25 @@ const makeCommunitiesSocket = config => {
|
|
|
382
382
|
)
|
|
383
383
|
return results.attrs.from
|
|
384
384
|
}),
|
|
385
|
+
communityGetInviteInfo: async code => {
|
|
386
|
+
const results = await communityQuery('@g.us', 'get', [{ tag: 'invite', attrs: { code } }])
|
|
387
|
+
return (0, exports.extractCommunityMetadata)(results)
|
|
388
|
+
},
|
|
389
|
+
communityToggleEphemeral: async (jid, ephemeralExpiration) => {
|
|
390
|
+
const content = ephemeralExpiration
|
|
391
|
+
? { tag: 'ephemeral', attrs: { expiration: ephemeralExpiration.toString() } }
|
|
392
|
+
: { tag: 'not_ephemeral', attrs: {} }
|
|
393
|
+
await communityQuery(jid, 'set', [content])
|
|
394
|
+
},
|
|
395
|
+
communitySettingUpdate: async (jid, setting) => {
|
|
396
|
+
await communityQuery(jid, 'set', [{ tag: setting, attrs: {} }])
|
|
397
|
+
},
|
|
385
398
|
communityMemberAddMode: async (jid, mode) => {
|
|
386
399
|
await communityQuery(jid, 'set', [{ tag: 'member_add_mode', attrs: {}, content: mode }])
|
|
387
400
|
},
|
|
388
401
|
communityJoinApprovalMode: async (jid, mode) => {
|
|
389
402
|
await communityQuery(jid, 'set', [
|
|
390
|
-
{ tag: 'membership_approval_mode', attrs: {}, content: [{ tag: '
|
|
403
|
+
{ tag: 'membership_approval_mode', attrs: {}, content: [{ tag: 'community_join', attrs: { state: mode } }] }
|
|
391
404
|
])
|
|
392
405
|
},
|
|
393
406
|
/**
|
|
@@ -445,40 +458,30 @@ const makeCommunitiesSocket = config => {
|
|
|
445
458
|
* Fetch total participant count of a community via MEX.
|
|
446
459
|
* @param {string} jid - Community JID
|
|
447
460
|
*/
|
|
448
|
-
communityParticipantCount:
|
|
449
|
-
|
|
461
|
+
communityParticipantCount: jid =>
|
|
462
|
+
mexQuery(
|
|
450
463
|
{ group_input: { group_id: jid } },
|
|
451
464
|
COMMUNITY_MEX_QUERY_IDS.QUERY_PARTICIPANT_COUNT,
|
|
452
465
|
'xwa2_group_query_by_id'
|
|
453
|
-
)
|
|
454
|
-
return result?.participant_count ?? result?.participantCount ?? result?.count ?? result
|
|
455
|
-
},
|
|
466
|
+
),
|
|
456
467
|
|
|
457
468
|
/**
|
|
458
469
|
* Fetch subgroups of a community via MEX (includes hidden_group, join approval state, etc.)
|
|
459
470
|
* @param {string} jid - Community JID
|
|
460
471
|
*/
|
|
461
|
-
communitySubgroupsMex:
|
|
462
|
-
|
|
463
|
-
{ group_input: { group_id: jid } },
|
|
464
|
-
COMMUNITY_MEX_QUERY_IDS.QUERY_SUBGROUPS,
|
|
465
|
-
'xwa2_group_query_by_id'
|
|
466
|
-
)
|
|
467
|
-
return result?.subgroups ?? result?.linked_groups ?? result?.sub_groups ?? result
|
|
468
|
-
},
|
|
472
|
+
communitySubgroupsMex: jid =>
|
|
473
|
+
mexQuery({ group_input: { group_id: jid } }, COMMUNITY_MEX_QUERY_IDS.QUERY_SUBGROUPS, 'xwa2_group_query_by_id'),
|
|
469
474
|
|
|
470
475
|
/**
|
|
471
476
|
* Fetch participant count of a specific subgroup within a community.
|
|
472
477
|
* @param {string} subgroupJid - Subgroup JID
|
|
473
478
|
*/
|
|
474
|
-
communitySubgroupParticipantCount:
|
|
475
|
-
|
|
479
|
+
communitySubgroupParticipantCount: subgroupJid =>
|
|
480
|
+
mexQuery(
|
|
476
481
|
{ group_input: { group_id: subgroupJid } },
|
|
477
482
|
COMMUNITY_MEX_QUERY_IDS.QUERY_SUBGROUP_PARTICIPANT_COUNT,
|
|
478
483
|
'xwa2_group_query_by_id'
|
|
479
|
-
)
|
|
480
|
-
return result?.participant_count ?? result?.participantCount ?? result?.count ?? result
|
|
481
|
-
},
|
|
484
|
+
),
|
|
482
485
|
|
|
483
486
|
/**
|
|
484
487
|
* Transfer community ownership to a new owner via MEX.
|
|
@@ -486,17 +489,15 @@ const makeCommunitiesSocket = config => {
|
|
|
486
489
|
* @param {string} communityJid - Community JID
|
|
487
490
|
* @param {string} newOwnerJid - JID of the new owner
|
|
488
491
|
*/
|
|
489
|
-
communityTransferOwnershipMex:
|
|
490
|
-
|
|
492
|
+
communityTransferOwnershipMex: (communityJid, newOwnerJid) =>
|
|
493
|
+
mexQuery(
|
|
491
494
|
{
|
|
492
495
|
group_id: communityJid,
|
|
493
496
|
role_updates: [{ user_jid: newOwnerJid, new_role: 'SUPERADMIN_MEMBER' }]
|
|
494
497
|
},
|
|
495
498
|
COMMUNITY_MEX_QUERY_IDS.UPDATE_OWNER,
|
|
496
499
|
'xwa2_community_update_owner'
|
|
497
|
-
)
|
|
498
|
-
return result?.status === 'ok' || !!result?.success || !!result
|
|
499
|
-
},
|
|
500
|
+
),
|
|
500
501
|
|
|
501
502
|
COMMUNITY_MEX_QUERY_IDS
|
|
502
503
|
}
|
|
@@ -516,12 +517,6 @@ const extractCommunityMetadata = result => {
|
|
|
516
517
|
: (0, WABinary_1.jidEncode)(community.attrs.id || '', 'g.us')
|
|
517
518
|
const eph = (0, WABinary_1.getBinaryNodeChild)(community, 'ephemeral')?.attrs.expiration
|
|
518
519
|
const memberAddMode = (0, WABinary_1.getBinaryNodeChildString)(community, 'member_add_mode') === 'all_member_add'
|
|
519
|
-
const linkedGroupsNode = (0, WABinary_1.getBinaryNodeChild)(community, 'linked_groups')
|
|
520
|
-
const linkLimit = community.attrs.parent_group_link_limit
|
|
521
|
-
? +community.attrs.parent_group_link_limit
|
|
522
|
-
: linkedGroupsNode?.attrs?.parent_group_link_limit
|
|
523
|
-
? +linkedGroupsNode.attrs.parent_group_link_limit
|
|
524
|
-
: undefined
|
|
525
520
|
const metadata = {
|
|
526
521
|
id: communityId,
|
|
527
522
|
subject: community.attrs.subject || '',
|
|
@@ -541,39 +536,13 @@ const extractCommunityMetadata = result => {
|
|
|
541
536
|
memberAddMode,
|
|
542
537
|
participants: (0, WABinary_1.getBinaryNodeChildren)(community, 'participant').map(({ attrs }) => {
|
|
543
538
|
return {
|
|
539
|
+
// TODO: IMPLEMENT THE PN/LID FIELDS HERE!!
|
|
544
540
|
id: attrs.jid,
|
|
545
|
-
admin: attrs.type || null
|
|
546
|
-
...(attrs.lid ? { lid: attrs.lid } : {}),
|
|
547
|
-
...(attrs.pn ? { pn: attrs.pn } : {})
|
|
541
|
+
admin: attrs.type || null
|
|
548
542
|
}
|
|
549
543
|
}),
|
|
550
544
|
ephemeralDuration: eph ? +eph : undefined,
|
|
551
|
-
addressingMode: (0, WABinary_1.getBinaryNodeChildString)(community, 'addressing_mode')
|
|
552
|
-
linkLimit,
|
|
553
|
-
suspendAppealStatus: community.attrs.suspend_appeal_status || community.attrs.appeal_status || undefined,
|
|
554
|
-
allowMemberSuggestM3:
|
|
555
|
-
community.attrs.parent_group_allow_member_suggest_existing_m3 === 'true'
|
|
556
|
-
? true
|
|
557
|
-
: community.attrs.parent_group_allow_member_suggest_existing_m3 === 'false'
|
|
558
|
-
? false
|
|
559
|
-
: undefined,
|
|
560
|
-
allowMemberSuggestM3ForAdmin:
|
|
561
|
-
community.attrs.parent_group_allow_member_suggest_existing_m3_for_admin === 'true'
|
|
562
|
-
? true
|
|
563
|
-
: community.attrs.parent_group_allow_member_suggest_existing_m3_for_admin === 'false'
|
|
564
|
-
? false
|
|
565
|
-
: undefined,
|
|
566
|
-
subgroupPollInterval: community.attrs.improve_subgroup_activation_subgroup_poll_interval
|
|
567
|
-
? Number(community.attrs.improve_subgroup_activation_subgroup_poll_interval)
|
|
568
|
-
: undefined,
|
|
569
|
-
isGeneralSubgroup:
|
|
570
|
-
community.attrs.general_subgroup != null
|
|
571
|
-
? community.attrs.general_subgroup === 'true' || community.attrs.general_subgroup === true
|
|
572
|
-
: undefined,
|
|
573
|
-
isHiddenSubgroup:
|
|
574
|
-
community.attrs.hidden_subgroup != null
|
|
575
|
-
? community.attrs.hidden_subgroup === 'true' || community.attrs.hidden_subgroup === true
|
|
576
|
-
: undefined
|
|
545
|
+
addressingMode: (0, WABinary_1.getBinaryNodeChildString)(community, 'addressing_mode')
|
|
577
546
|
}
|
|
578
547
|
return metadata
|
|
579
548
|
}
|