chore: bump whatsapp-web.js

This commit is contained in:
Anton Voylenko 2025-08-28 18:29:32 +03:00
commit 18d4a5d43b
4 changed files with 20 additions and 20 deletions

8
package-lock.json generated
View file

@ -17,7 +17,7 @@
"qr-image": "^3.2.0", "qr-image": "^3.2.0",
"qrcode-terminal": "^0.12.0", "qrcode-terminal": "^0.12.0",
"swagger-ui-express": "^5.0.1", "swagger-ui-express": "^5.0.1",
"whatsapp-web.js": "^1.32.0", "whatsapp-web.js": "^1.33.0",
"ws": "^8.18.2" "ws": "^8.18.2"
}, },
"devDependencies": { "devDependencies": {
@ -8177,9 +8177,9 @@
"license": "BSD-2-Clause" "license": "BSD-2-Clause"
}, },
"node_modules/whatsapp-web.js": { "node_modules/whatsapp-web.js": {
"version": "1.32.0", "version": "1.33.0",
"resolved": "https://registry.npmjs.org/whatsapp-web.js/-/whatsapp-web.js-1.32.0.tgz", "resolved": "https://registry.npmjs.org/whatsapp-web.js/-/whatsapp-web.js-1.33.0.tgz",
"integrity": "sha512-uXBT2WtUxUUZpOIevy/x+9JlIU7MSnPniqZC0NJq7k5VTjkI1GYWJZlDJSSYTvnw3JOZMn1wSizHqb9g/q5eew==", "integrity": "sha512-WyyOl0Xh2C1o7/pnZJ64evbkJL6t/BjN0adeIBP0QUiWS+nuv35iAg5tZWBPZEa1S1oFjX8ZXmSFBdUSjr5lQw==",
"license": "Apache-2.0", "license": "Apache-2.0",
"dependencies": { "dependencies": {
"@pedroslopez/moduleraid": "^5.0.2", "@pedroslopez/moduleraid": "^5.0.2",

View file

@ -17,7 +17,7 @@
"qr-image": "^3.2.0", "qr-image": "^3.2.0",
"qrcode-terminal": "^0.12.0", "qrcode-terminal": "^0.12.0",
"swagger-ui-express": "^5.0.1", "swagger-ui-express": "^5.0.1",
"whatsapp-web.js": "^1.32.0", "whatsapp-web.js": "^1.33.0",
"ws": "^8.18.2" "ws": "^8.18.2"
}, },
"devDependencies": { "devDependencies": {

View file

@ -106,6 +106,7 @@ const sendMessage = async (req, res) => {
try { try {
const { chatId, content, contentType, options, mediaFromURLOptions = {} } = req.body const { chatId, content, contentType, options, mediaFromURLOptions = {} } = req.body
const sendOptions = { waitUntilMsgSent: true, ...options }
const client = sessions.get(req.params.sessionId) const client = sessions.get(req.params.sessionId)
const chat = await client.getChatById(chatId) const chat = await client.getChatById(chatId)
if (!chat) { if (!chat) {
@ -119,16 +120,16 @@ const sendMessage = async (req, res) => {
let messageOut let messageOut
switch (contentType) { switch (contentType) {
case 'string': case 'string':
messageOut = await chat.sendMessage(content, options) messageOut = await chat.sendMessage(content, sendOptions)
break break
case 'MessageMediaFromURL': { case 'MessageMediaFromURL': {
const messageMediaFromURL = await MessageMedia.fromUrl(content, { unsafeMime: true, ...mediaFromURLOptions }) const messageMediaFromURL = await MessageMedia.fromUrl(content, { unsafeMime: true, ...mediaFromURLOptions })
messageOut = await chat.sendMessage(messageMediaFromURL, options) messageOut = await chat.sendMessage(messageMediaFromURL, sendOptions)
break break
} }
case 'MessageMedia': { case 'MessageMedia': {
const messageMedia = new MessageMedia(content.mimetype, content.data, content.filename, content.filesize) const messageMedia = new MessageMedia(content.mimetype, content.data, content.filename, content.filesize)
messageOut = await chat.sendMessage(messageMedia, options) messageOut = await chat.sendMessage(messageMedia, sendOptions)
break break
} }
default: default:

View file

@ -64,47 +64,46 @@ const sendMessage = async (req, res) => {
*/ */
try { try {
const { chatId, content, contentType, options, mediaFromURLOptions = {} } = req.body const { chatId, content, contentType, options = {}, mediaFromURLOptions = {} } = req.body
const client = sessions.get(req.params.sessionId) const client = sessions.get(req.params.sessionId)
const sendOptions = { waitUntilMsgSent: true, ...options }
let messageOut let messageOut
switch (contentType) { switch (contentType) {
case 'string': case 'string':
if (options?.media) { if (sendOptions?.media) {
const { mimetype, data, filename = null, filesize = null } = options.media const { mimetype, data, filename = null, filesize = null } = sendOptions.media
if (!mimetype || !data) { if (!mimetype || !data) {
return sendErrorResponse(res, 400, 'invalid media options') return sendErrorResponse(res, 400, 'invalid media options')
} }
options.media = new MessageMedia(mimetype, data, filename, filesize) sendOptions.media = new MessageMedia(mimetype, data, filename, filesize)
} }
messageOut = await client.sendMessage(chatId, content, options) messageOut = await client.sendMessage(chatId, content, sendOptions)
break break
case 'MessageMediaFromURL': { case 'MessageMediaFromURL': {
const messageMediaFromURL = await MessageMedia.fromUrl(content, { unsafeMime: true, ...mediaFromURLOptions }) const messageMediaFromURL = await MessageMedia.fromUrl(content, { unsafeMime: true, ...mediaFromURLOptions })
messageOut = await client.sendMessage(chatId, messageMediaFromURL, options) messageOut = await client.sendMessage(chatId, messageMediaFromURL, sendOptions)
break break
} }
case 'MessageMedia': { case 'MessageMedia': {
const messageMedia = new MessageMedia(content.mimetype, content.data, content.filename, content.filesize) const messageMedia = new MessageMedia(content.mimetype, content.data, content.filename, content.filesize)
messageOut = await client.sendMessage(chatId, messageMedia, options) messageOut = await client.sendMessage(chatId, messageMedia, sendOptions)
break break
} }
case 'Location': { case 'Location': {
const location = new Location(content.latitude, content.longitude, content.description) const location = new Location(content.latitude, content.longitude, content.description)
messageOut = await client.sendMessage(chatId, location, options) messageOut = await client.sendMessage(chatId, location, sendOptions)
break break
} }
case 'Contact': { case 'Contact': {
const contactId = content.contactId.endsWith('@c.us') ? content.contactId : `${content.contactId}@c.us` const contactId = content.contactId.endsWith('@c.us') ? content.contactId : `${content.contactId}@c.us`
const contact = await client.getContactById(contactId) const contact = await client.getContactById(contactId)
messageOut = await client.sendMessage(chatId, contact, options) messageOut = await client.sendMessage(chatId, contact, sendOptions)
break break
} }
case 'Poll': { case 'Poll': {
const poll = new Poll(content.pollName, content.pollOptions, content.options) const poll = new Poll(content.pollName, content.pollOptions, content.options)
messageOut = await client.sendMessage(chatId, poll, options) messageOut = await client.sendMessage(chatId, poll, sendOptions)
// fix for poll events not being triggered (open the chat that you sent the poll)
await client.interface.openChatWindow(chatId)
break break
} }
default: default: