@pontasockets/baileys 0.3.1 → 0.3.3

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.
@@ -1,17 +1,10 @@
1
1
  "use strict"
2
2
 
3
- var __importDefault = (this && this.__importDefault) || function(mod) {
4
- return (mod && mod.__esModule) ? mod : {
5
- "default": mod
6
- }
7
- }
8
-
9
3
  Object.defineProperty(exports, "__esModule", {
10
4
  value: true
11
5
  })
12
6
 
13
7
  const boom_1 = require("@hapi/boom")
14
- const axios_1 = __importDefault(require("axios"))
15
8
  const crypto_1 = require("crypto")
16
9
  const fs_1 = require("fs")
17
10
  const WAProto_1 = require("../../WAProto")
@@ -27,7 +20,7 @@ const MIMETYPE_MAP = {
27
20
  image: 'image/jpeg',
28
21
  video: 'video/mp4',
29
22
  document: 'application/pdf',
30
- audio: 'audio/ogg codecs=opus',
23
+ audio: 'audio/ogg; codecs=opus',
31
24
  sticker: 'image/webp',
32
25
  'product-catalog-image': 'image/jpeg'
33
26
  }
@@ -168,7 +161,7 @@ const prepareWAMessageMedia = async (message, options) => {
168
161
 
169
162
  const requiresDurationComputation = mediaType === 'audio' && typeof uploadData.seconds === 'undefined'
170
163
  const requiresThumbnailComputation = (mediaType === 'image' || mediaType === 'video') && typeof uploadData['jpegThumbnail'] === 'undefined'
171
- const requiresWaveformProcessing = mediaType === 'audio' && uploadData.ptt === true
164
+ const requiresWaveformProcessing = mediaType === 'audio' && uploadData.ptt === true && typeof uploadData.waveform === 'undefined'
172
165
  const requiresAudioBackground = options.backgroundColor && mediaType === 'audio' && uploadData.ptt === true
173
166
  const requiresOriginalForSomeProcessing = requiresDurationComputation || requiresThumbnailComputation
174
167
 
@@ -321,7 +314,7 @@ const prepareAlbumMessageContent = async (jid, albums, options) => {
321
314
  },
322
315
  ...options
323
316
  })
324
- } else if ('video' in message) {
317
+ } else if ('video' in media) {
325
318
  mediaMsg = await generateWAMessage(jid, {
326
319
  video: media.video,
327
320
  ...media,
@@ -383,9 +376,9 @@ const generateForwardMessageContent = (message, forceForward) => {
383
376
  content = WAProto_1.proto.Message.decode(WAProto_1.proto.Message.encode(content).finish())
384
377
 
385
378
  let key = Object.keys(content)[0]
386
- let score = content[key].contextInfo?.forwardingScore || 0
379
+ let score = content?.[key]?.contextInfo?.forwardingScore || 0
387
380
 
388
- if (forceForward) score += forceForward ? forceForward : 1
381
+ score += message.key.fromMe && !forceForward ? 0 : 1
389
382
 
390
383
  if (key === 'conversation') {
391
384
  content.extendedTextMessage = {
@@ -905,7 +898,7 @@ const generateWAMessageContent = async (message, options) => {
905
898
  directPath: stickerPackUploadResult.directPath,
906
899
  fileLength: stickerPackUpload.fileLength,
907
900
  mediaKeyTimestamp: generics_1.unixTimestampSeconds(),
908
- trayIconFileName: `${stickerPackId}.png`,
901
+ trayIconFileName: `${stickerPackId}.webp`,
909
902
  imageDataHash,
910
903
  thumbnailDirectPath: coverImage.directPath,
911
904
  thumbnailFileSha256: coverImage.fileSha256,
@@ -1189,7 +1182,7 @@ const generateWAMessageContent = async (message, options) => {
1189
1182
  }
1190
1183
  }
1191
1184
 
1192
- if ('footer' in message && !message.footer) {
1185
+ if ('footer' in message && !!message.footer) {
1193
1186
  interactiveMessage.footer = {
1194
1187
  text: message.footer
1195
1188
  }
@@ -1398,9 +1391,12 @@ const generateWAMessageFromContent = (jid, message, options) => {
1398
1391
  messageSecret: crypto_1.randomBytes(32),
1399
1392
  ...message.messageContextInfo
1400
1393
  }
1394
+ }
1395
+
1396
+ if (!!options?.ephemeralExpiration && key !== 'protocolMessage' && key !== 'ephemeralMessage' && !WABinary_1.isJidNewsletter(jid)) {
1401
1397
  innerMessage[key].contextInfo = {
1402
1398
  ...(innerMessage[key].contextInfo || {}),
1403
- expiration: options.ephemeralExpiration ? options.ephemeralExpiration : 0
1399
+ expiration: options.ephemeralExpiration
1404
1400
  }
1405
1401
  }
1406
1402
 
@@ -1427,6 +1423,10 @@ const generateWAMessage = async (jid, content, options) => {
1427
1423
  msgId: options.messageId
1428
1424
  })
1429
1425
 
1426
+ if (jid) {
1427
+ options.jid = jid
1428
+ }
1429
+
1430
1430
  return generateWAMessageFromContent(jid, await generateWAMessageContent(content, {
1431
1431
  newsletter: WABinary_1.isJidNewsletter(jid),
1432
1432
  ...options
@@ -1436,7 +1436,7 @@ const generateWAMessage = async (jid, content, options) => {
1436
1436
  const getContentType = (content) => {
1437
1437
  if (content) {
1438
1438
  const keys = Object.keys(content)
1439
- const key = keys.find(k => (k === 'conversation' || k.endsWith('Message') || k.endsWith('V2') || k.endsWith('V3') || k.endsWith('V4') || k.endsWith('V5')) && k !== 'senderKeyDistributionMessage' && k !== 'messageContextInfo')
1439
+ const key = keys.find(k => (k === 'conversation' || k.includes('Message')) && k !== 'senderKeyDistributionMessage' && k !== 'messageContextInfo')
1440
1440
 
1441
1441
  return key
1442
1442
  }
@@ -1459,7 +1459,7 @@ const normalizeMessageContent = (content) => {
1459
1459
  return content
1460
1460
 
1461
1461
  function getFutureProofMessage(message) {
1462
- return ((message === null || message === void 0 ? void 0 : message.editedMessage) || (message === null || message === void 0 ? void 0 : message.statusAddYours) || (message === null || message === void 0 ? void 0 : message.botTaskMessage) || (message === null || message === void 0 ? void 0 : message.eventCoverImage) || (message === null || message === void 0 ? void 0 : message.questionMessage) || (message === null || message === void 0 ? void 0 : message.viewOnceMessage) || (message === null || message === void 0 ? void 0 : message.botInvokeMessage) || (message === null || message === void 0 ? void 0 : message.ephemeralMessage) || (message === null || message === void 0 ? void 0 : message.lottieStickerMessage) || (message === null || message === void 0 ? void 0 : message.groupStatusMessage) || (message === null || message === void 0 ? void 0 : message.limitSharingMessage) || (message === null || message === void 0 ? void 0 : message.viewOnceMessageV2) || (message === null || message === void 0 ? void 0 : message.botForwardedMessage) || (message === null || message === void 0 ? void 0 : message.statusMentionMessage) || (message === null || message === void 0 ? void 0 : message.groupStatusMessageV2) || (message === null || message === void 0 ? void 0 : message.pollCreationMessageV4) || (message === null || message === void 0 ? void 0 : message.pollCreationMessageV5) || (message === null || message === void 0 ? void 0 : message.associatedChildMessage) || (message === null || message === void 0 ? void 0 : message.groupMentionedMessage) || (message === null || message === void 0 ? void 0 : message.groupStatusMentionMessage) || (message === null || message === void 0 ? void 0 : message.viewOnceMessageV2Extension) || (message === null || message === void 0 ? void 0 : message.documentWithCaptionMessage) || (message === null || message === void 0 ? void 0 : message.pollCreationOptionImageMessage))
1462
+ return ((message === null || message === void 0 ? void 0 : message.editedMessage) || (message === null || message === void 0 ? void 0 : message.statusAddYours) || (message === null || message === void 0 ? void 0 : message.botTaskMessage) || (message === null || message === void 0 ? void 0 : message.eventCoverImage) || (message === null || message === void 0 ? void 0 : message.questionMessage) || (message === null || message === void 0 ? void 0 : message.questionReplyMessage) || (message === null || message === void 0 ? void 0 : message.viewOnceMessage) || (message === null || message === void 0 ? void 0 : message.botInvokeMessage) || (message === null || message === void 0 ? void 0 : message.ephemeralMessage) || (message === null || message === void 0 ? void 0 : message.lottieStickerMessage) || (message === null || message === void 0 ? void 0 : message.groupStatusMessage) || (message === null || message === void 0 ? void 0 : message.limitSharingMessage) || (message === null || message === void 0 ? void 0 : message.viewOnceMessageV2) || (message === null || message === void 0 ? void 0 : message.botForwardedMessage) || (message === null || message === void 0 ? void 0 : message.statusMentionMessage) || (message === null || message === void 0 ? void 0 : message.groupStatusMessageV2) || (message === null || message === void 0 ? void 0 : message.pollCreationMessageV4) || (message === null || message === void 0 ? void 0 : message.pollCreationMessageV5) || (message === null || message === void 0 ? void 0 : message.associatedChildMessage) || (message === null || message === void 0 ? void 0 : message.groupMentionedMessage) || (message === null || message === void 0 ? void 0 : message.groupStatusMentionMessage) || (message === null || message === void 0 ? void 0 : message.viewOnceMessageV2Extension) || (message === null || message === void 0 ? void 0 : message.documentWithCaptionMessage) || (message === null || message === void 0 ? void 0 : message.pollCreationOptionImageMessage) || (message === null || message === void 0 ? void 0 : message.spoilerMessage) || (message === null || message === void 0 ? void 0 : message.newsletterAdminProfileMessage) || (message === null || message === void 0 ? void 0 : message.newsletterAdminProfileMessageV2) || (message === null || message === void 0 ? void 0 : message.newsletterAdminProfileStatusMessage))
1463
1463
  }
1464
1464
  }
1465
1465
 
@@ -1617,7 +1617,7 @@ const REUPLOAD_REQUIRED_STATUS = [410, 404]
1617
1617
 
1618
1618
  const downloadMediaMessage = async (message, type, options, ctx) => {
1619
1619
  const result = await downloadMsg().catch(async (error) => {
1620
- if (ctx && axios_1.default.isAxiosError(error) && REUPLOAD_REQUIRED_STATUS.includes(error.response?.status)) {
1620
+ if (ctx && typeof error?.status === 'number' && REUPLOAD_REQUIRED_STATUS.includes(error.status)) {
1621
1621
  ctx.logger.info({
1622
1622
  key: message.key
1623
1623
  }, 'sending reupload media request...')
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@pontasockets/baileys",
3
- "version": "0.3.1",
3
+ "version": "0.3.3",
4
4
  "description": "Baileys is a lightweight JavaScript library for interacting with the WhatsApp Web API using WebSocket.",
5
5
  "keywords": [
6
6
  "facebook",
@@ -31,7 +31,7 @@
31
31
  "@adiwajshing/keyed-db": "^0.2.4",
32
32
  "@cacheable/node-cache": "1.5.3",
33
33
  "@pontasockets/eslint-config": "^1.0.0",
34
- "@pontasockets/libsignal-node": "^1.0.0",
34
+ "@pontasockets/libsignal-node": "^1.1.0",
35
35
  "@hapi/boom": "^9.1.3",
36
36
  "async-mutex": "^0.5.0",
37
37
  "axios": "^1.12.1",