@wppconnect/server 1.3.4 → 1.4.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/CHANGELOG.md CHANGED
@@ -1,3 +1,7 @@
1
+ # 1.4.0 (2022-06-29)
2
+
3
+
4
+
1
5
  ## 1.3.4 (2022-06-20)
2
6
 
3
7
 
@@ -1,4 +1,4 @@
1
- "use strict";var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");Object.defineProperty(exports, "__esModule", { value: true });exports.archiveChat = archiveChat;exports.blockContact = blockContact;exports.chatWoot = chatWoot;exports.checkNumberStatus = checkNumberStatus;exports.clearChat = clearChat;exports.deleteChat = deleteChat;exports.deleteMessage = deleteMessage;exports.forwardMessages = forwardMessages;exports.getAllChats = getAllChats;exports.getAllChatsWithMessages = getAllChatsWithMessages;exports.getAllContacts = getAllContacts;exports.getAllMessagesInChat = getAllMessagesInChat;exports.getAllNewMessages = getAllNewMessages;exports.getAllUnreadMessages = getAllUnreadMessages;exports.getBatteryLevel = getBatteryLevel;exports.getBlockList = getBlockList;exports.getChatById = getChatById;exports.getChatIsOnline = getChatIsOnline;exports.getContact = getContact;exports.getHostDevice = getHostDevice;exports.getLastSeen = getLastSeen;exports.getListMutes = getListMutes;exports.getMessageById = getMessageById;exports.getMessages = getMessages;exports.getNumberProfile = getNumberProfile;exports.getPhoneNumber = getPhoneNumber;exports.getProfilePicFromServer = getProfilePicFromServer;exports.getStatus = getStatus;exports.getUnreadMessages = getUnreadMessages;exports.loadAndGetAllMessagesInChat = loadAndGetAllMessagesInChat;exports.markUnseenMessage = markUnseenMessage;exports.pinChat = pinChat;exports.reply = reply;exports.sendContactVcard = sendContactVcard;exports.sendMute = sendMute;exports.sendSeen = sendSeen;exports.setChatState = setChatState;exports.setProfileName = setProfileName;exports.setProfilePic = setProfilePic;exports.setProfileStatus = setProfileStatus;exports.setTemporaryMessages = setTemporaryMessages;exports.setTyping = setTyping;exports.showAllContacts = showAllContacts;exports.starMessage = starMessage;exports.unblockContact = unblockContact;
1
+ "use strict";var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");Object.defineProperty(exports, "__esModule", { value: true });exports.archiveChat = archiveChat;exports.blockContact = blockContact;exports.chatWoot = chatWoot;exports.checkNumberStatus = checkNumberStatus;exports.clearChat = clearChat;exports.deleteChat = deleteChat;exports.deleteMessage = deleteMessage;exports.forwardMessages = forwardMessages;exports.getAllChats = getAllChats;exports.getAllChatsWithMessages = getAllChatsWithMessages;exports.getAllContacts = getAllContacts;exports.getAllMessagesInChat = getAllMessagesInChat;exports.getAllNewMessages = getAllNewMessages;exports.getAllUnreadMessages = getAllUnreadMessages;exports.getBatteryLevel = getBatteryLevel;exports.getBlockList = getBlockList;exports.getChatById = getChatById;exports.getChatIsOnline = getChatIsOnline;exports.getContact = getContact;exports.getHostDevice = getHostDevice;exports.getLastSeen = getLastSeen;exports.getListMutes = getListMutes;exports.getMessageById = getMessageById;exports.getMessages = getMessages;exports.getNumberProfile = getNumberProfile;exports.getPhoneNumber = getPhoneNumber;exports.getProfilePicFromServer = getProfilePicFromServer;exports.getStatus = getStatus;exports.getUnreadMessages = getUnreadMessages;exports.loadAndGetAllMessagesInChat = loadAndGetAllMessagesInChat;exports.markUnseenMessage = markUnseenMessage;exports.pinChat = pinChat;exports.rejectCall = rejectCall;exports.reply = reply;exports.sendContactVcard = sendContactVcard;exports.sendMute = sendMute;exports.sendSeen = sendSeen;exports.setChatState = setChatState;exports.setProfileName = setProfileName;exports.setProfilePic = setProfilePic;exports.setProfileStatus = setProfileStatus;exports.setTemporaryMessages = setTemporaryMessages;exports.setTyping = setTyping;exports.showAllContacts = showAllContacts;exports.starMessage = starMessage;exports.unblockContact = unblockContact;
2
2
 
3
3
 
4
4
 
@@ -254,11 +254,7 @@ async function archiveChat(req, res) {
254
254
 
255
255
  try {
256
256
  let response;
257
- if (isGroup) {
258
- response = await req.client.archiveChat(`${phone}@g.us`, value);
259
- } else {
260
- response = await req.client.archiveChat(`${phone}@c.us`, value);
261
- }
257
+ response = await req.client.archiveChat(`${phone}`, value);
262
258
  return res.status(201).json({ status: 'success', response: response });
263
259
  } catch (e) {
264
260
  req.logger.error(e);
@@ -311,14 +307,10 @@ async function forwardMessages(req, res) {
311
307
  }
312
308
 
313
309
  async function markUnseenMessage(req, res) {
314
- const { phone, isGroup = false } = req.body;
310
+ const { phone } = req.body;
315
311
 
316
312
  try {
317
- if (isGroup) {
318
- await req.client.markUnseenMessage(`${phone}@g.us`);
319
- } else {
320
- await req.client.markUnseenMessage(`${phone}@c.us`);
321
- }
313
+ await req.client.markUnseenMessage(`${phone}`);
322
314
  return res.status(200).json({ status: 'success', response: { message: 'unseen checked' } });
323
315
  } catch (e) {
324
316
  req.logger.error(e);
@@ -643,6 +635,17 @@ async function setProfileStatus(req, res) {
643
635
  return res.status(500).json({ status: 'error', message: 'Error on set profile status' });
644
636
  }
645
637
  }
638
+ async function rejectCall(req, res) {
639
+ const { callId } = req.body;
640
+ try {
641
+ let response = await req.client.rejectCall(callId);
642
+
643
+ return res.status(200).json({ status: 'success', response: response });
644
+ } catch (e) {
645
+ req.logger.error(e);
646
+ return res.status(500).json({ status: 'error', message: 'Error on rejectCall' });
647
+ }
648
+ }
646
649
 
647
650
  async function starMessage(req, res) {
648
651
  const { messageId, star = true } = req.body;
@@ -1 +1 @@
1
- {"version":3,"file":"deviceController.js","names":["returnSucess","res","session","phone","data","status","json","response","message","contact","returnError","req","error","logger","log","setProfileName","name","body","result","client","showAllContacts","contacts","getAllContacts","getAllChats","mapper","e","getAllChatsWithMessages","getAllMessagesInChat","params","isGroup","includeMe","includeNotifications","query","contato","contactToArray","getAllNewMessages","getAllUnreadMessages","getChatById","allMessages","dir","fs","existsSync","mkdirSync","map","type","download","serverOptions","host","port","t","mime","extension","mimetype","getMessageById","messageId","chatId","user","getBatteryLevel","getHostDevice","phoneNumber","getWid","getPhoneNumber","getBlockList","blocked","split","deleteChat","results","clearChat","archiveChat","value","deleteMessage","reply","text","messageid","forwardMessages","markUnseenMessage","blockContact","unblockContact","pinChat","state","setProfilePic","file","path","pathFile","unlinkAsync","getUnreadMessages","getChatIsOnline","getLastSeen","getListMutes","loadAndGetAllMessagesInChat","getMessages","count","direction","id","parseInt","sendContactVcard","contactsId","sendMute","time","sendSeen","push","setChatState","chatstate","setTemporaryMessages","setTyping","startTyping","stopTyping","checkNumberStatus","getContact","getNumberProfile","getProfilePicFromServer","getStatus","setProfileStatus","starMessage","star","chatWoot","clientsArray","isConnected","event","private","message_type","conversation","meta","sender","phone_number","replace","messages","attachments","base_url","config","baseURL","data_url","substring","indexOf","sendFile","content","sendText","console"],"sources":["../../src/controller/deviceController.js"],"sourcesContent":["/*\n * Copyright 2021 WPPConnect Team\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\nimport fs from 'fs';\nimport { download } from './sessionController';\nimport { contactToArray, unlinkAsync } from '../util/functions';\nimport mime from 'mime-types';\nimport { clientsArray } from '../util/sessionUtil';\n\nfunction returnSucess(res, session, phone, data) {\n res.status(201).json({\n status: 'Success',\n response: {\n message: 'Information retrieved successfully.',\n contact: phone,\n session: session,\n data: data,\n },\n });\n}\n\nfunction returnError(req, res, session, error) {\n req.logger.error(error);\n res.status(400).json({\n status: 'Error',\n response: {\n message: 'Error retrieving information',\n session: session,\n log: error,\n },\n });\n}\n\nexport async function setProfileName(req, res) {\n const { name } = req.body;\n\n if (!name) return res.status(400).json({ status: 'error', message: 'Parameter name is required!' });\n\n try {\n const result = await req.client.setProfileName(name);\n return res.status(200).json({ status: 'success', response: result });\n } catch (error) {\n req.logger.error(error);\n res.status(500).json({ status: 'error', message: 'Error on set profile name.' });\n }\n}\n\nexport async function showAllContacts(req, res) {\n try {\n const contacts = await req.client.getAllContacts();\n res.status(200).json({ status: 'success', response: contacts });\n } catch (error) {\n req.logger.error(error);\n res.status(500).json({ status: 'error', message: 'Error fetching contacts' });\n }\n}\n\nexport async function getAllChats(req, res) {\n try {\n const response = await req.client.getAllChats();\n return res.status(200).json({ status: 'success', response: response, mapper: 'chat' });\n } catch (e) {\n req.logger.error(e);\n return res.status(500).json({ status: 'error', message: 'Error on get all chats' });\n }\n}\n\nexport async function getAllChatsWithMessages(req, res) {\n try {\n const response = await req.client.getAllChatsWithMessages();\n return res.status(200).json({ status: 'success', response: response });\n } catch (e) {\n req.logger.error(e);\n return res.status(500).json({ status: 'error', message: 'Error on get all chats whit messages' });\n }\n}\n\nexport async function getAllMessagesInChat(req, res) {\n try {\n let { phone } = req.params;\n const { isGroup = false, includeMe = true, includeNotifications = true } = req.query;\n\n let response;\n for (const contato of contactToArray(phone, isGroup)) {\n response = await req.client.getAllMessagesInChat(contato, includeMe, includeNotifications);\n }\n\n return res.status(200).json({ status: 'success', response: response });\n } catch (e) {\n req.logger.error(e);\n return res.status(500).json({ status: 'error', message: 'Error on get all messages in chat' });\n }\n}\n\nexport async function getAllNewMessages(req, res) {\n try {\n const response = await req.client.getAllNewMessages();\n return res.status(200).json({ status: 'success', response: response });\n } catch (e) {\n req.logger.error(e);\n return res.status(500).json({ status: 'error', message: 'Error on get all messages in chat' });\n }\n}\n\nexport async function getAllUnreadMessages(req, res) {\n try {\n const response = await req.client.getAllUnreadMessages();\n return res.status(200).json({ status: 'success', response: response });\n } catch (e) {\n req.logger.error(e);\n return res.status(500).json({ status: 'error', message: 'Error on get all messages in chat' });\n }\n}\n\nexport async function getChatById(req, res) {\n const { phone } = req.params;\n const { isGroup } = req.query;\n\n try {\n let allMessages = {};\n\n if (isGroup) {\n allMessages = await req.client.getAllMessagesInChat(`${phone}@g.us`, true, true);\n } else {\n allMessages = await req.client.getAllMessagesInChat(`${phone}@c.us`, true, true);\n }\n\n let dir = './WhatsAppImages';\n if (!fs.existsSync(dir)) {\n fs.mkdirSync(dir);\n }\n\n allMessages.map((message) => {\n if (message.type === 'sticker') {\n download(message, req.client, req.logger);\n message.body = `${req.serverOptions.host}:${req.serverOptions.port}/files/file${message.t}.${mime.extension(\n message.mimetype\n )}`;\n }\n });\n\n return res.status(200).json({ status: 'success', response: allMessages });\n } catch (e) {\n req.logger.error(e);\n return res.status(500).json({ status: 'error', message: 'Error changing chat by Id' });\n }\n}\n\nexport async function getMessageById(req, res) {\n const session = req.session;\n const { messageId } = req.params;\n\n try {\n let result;\n\n result = await req.client.getMessageById(messageId);\n\n returnSucess(res, session, result.chatId.user, result);\n } catch (error) {\n returnError(req, res, session, error);\n }\n}\n\nexport async function getBatteryLevel(req, res) {\n try {\n let response = await req.client.getBatteryLevel();\n return res.status(200).json({ status: 'Success', response: response });\n } catch (e) {\n req.logger.error(e);\n return res.status(500).json({ status: 'error', message: 'Error retrieving battery status' });\n }\n}\n\nexport async function getHostDevice(req, res) {\n try {\n const response = await req.client.getHostDevice();\n const phoneNumber = await req.client.getWid();\n return res.status(200).json({ status: 'success', response: { ...response, phoneNumber }, mapper: 'device' });\n } catch (e) {\n req.logger.error(e);\n return res.status(500).json({ status: 'error', message: 'Erro ao recuperar dados do telefone' });\n }\n}\n\nexport async function getPhoneNumber(req, res) {\n try {\n const phoneNumber = await req.client.getWid();\n return res.status(200).json({ status: 'success', response: phoneNumber, mapper: 'device' });\n } catch (e) {\n req.logger.error(e);\n return res.status(500).json({ status: 'error', message: 'Error retrieving phone number' });\n }\n}\n\nexport async function getBlockList(req, res) {\n let response = await req.client.getBlockList();\n\n try {\n const blocked = response.map((contato) => {\n return { phone: contato ? contato.split('@')[0] : '' };\n });\n\n return res.status(200).json({ status: 'success', response: blocked });\n } catch (e) {\n req.logger.error(e);\n return res.status(500).json({ status: 'error', message: 'Error retrieving blocked contact list' });\n }\n}\n\nexport async function deleteChat(req, res) {\n const { phone } = req.body;\n const session = req.session;\n\n try {\n let results = {};\n for (const contato of phone) {\n results[contato] = await req.client.deleteChat(contato);\n }\n returnSucess(res, session, phone, results);\n } catch (error) {\n returnError(req, res, session, error);\n }\n}\n\nexport async function clearChat(req, res) {\n const { phone } = req.body;\n const session = req.session;\n\n try {\n let results = {};\n for (const contato of phone) {\n results[contato] = await req.client.clearChat(contato);\n }\n returnSucess(res, session, phone, results);\n } catch (error) {\n returnError(req, res, session, error);\n }\n}\n\nexport async function archiveChat(req, res) {\n const { phone, value = true, isGroup = false } = req.body;\n\n try {\n let response;\n if (isGroup) {\n response = await req.client.archiveChat(`${phone}@g.us`, value);\n } else {\n response = await req.client.archiveChat(`${phone}@c.us`, value);\n }\n return res.status(201).json({ status: 'success', response: response });\n } catch (e) {\n req.logger.error(e);\n return res.status(500).json({ status: 'error', message: 'Error on archive chat' });\n }\n}\n\nexport async function deleteMessage(req, res) {\n const { phone, messageId } = req.body;\n\n try {\n await req.client.deleteMessage(`${phone}@c.us`, [messageId]);\n\n return res.status(200).json({ status: 'success', response: { message: 'Message deleted' } });\n } catch (e) {\n req.logger.error(e);\n return res.status(500).json({ status: 'error', message: 'Error on delete message' });\n }\n}\n\nexport async function reply(req, res) {\n const { phone, text, messageid } = req.body;\n\n try {\n let response = await req.client.reply(`${phone}@c.us`, text, messageid);\n return res.status(200).json({ status: 'success', response: response });\n } catch (e) {\n req.logger.error(e);\n return res.status(500).json({ status: 'error', message: 'Error replying message' });\n }\n}\n\nexport async function forwardMessages(req, res) {\n const { phone, messageId, isGroup = false } = req.body;\n\n try {\n let response;\n\n if (!isGroup) {\n response = await req.client.forwardMessages(`${phone}`, [messageId], false);\n } else {\n response = await req.client.forwardMessages(`${phone}`, [messageId], false);\n }\n\n return res.status(201).json({ status: 'success', response: response });\n } catch (e) {\n req.logger.error(e);\n return res.status(500).json({ status: 'error', message: 'Error forwarding message' });\n }\n}\n\nexport async function markUnseenMessage(req, res) {\n const { phone, isGroup = false } = req.body;\n\n try {\n if (isGroup) {\n await req.client.markUnseenMessage(`${phone}@g.us`);\n } else {\n await req.client.markUnseenMessage(`${phone}@c.us`);\n }\n return res.status(200).json({ status: 'success', response: { message: 'unseen checked' } });\n } catch (e) {\n req.logger.error(e);\n return res.status(500).json({ status: 'error', message: 'Error on mark unseen' });\n }\n}\n\nexport async function blockContact(req, res) {\n const { phone } = req.body;\n\n try {\n await req.client.blockContact(`${phone}`);\n return res.status(200).json({ status: 'success', response: { message: 'Contact blocked' } });\n } catch (e) {\n req.logger.error(e);\n return res.status(500).json({ status: 'error', message: 'Error on block contact' });\n }\n}\n\nexport async function unblockContact(req, res) {\n const { phone } = req.body;\n\n try {\n await req.client.unblockContact(`${phone}`);\n return res.status(200).json({ status: 'success', response: { message: 'Contact UnBlocked' } });\n } catch (e) {\n req.logger.error(e);\n return res.status(500).json({ status: 'error', message: 'Error on unlock contact' });\n }\n}\n\nexport async function pinChat(req, res) {\n const { phone, state } = req.body;\n\n try {\n for (const contato of phone) {\n await req.client.pinChat(contato, state === 'true', false);\n }\n\n return res.status(200).json({ status: 'success', response: { message: 'Chat fixed' } });\n } catch (e) {\n req.logger.error(e);\n return res.status(500).json({ status: 'error', message: e.text || 'Error on pin chat' });\n }\n}\n\nexport async function setProfilePic(req, res) {\n if (!req.file) return res.status(400).json({ status: 'Error', message: 'File parameter is required!' });\n\n try {\n const { path: pathFile } = req.file;\n\n await req.client.setProfilePic(pathFile);\n await unlinkAsync(pathFile);\n\n return res.status(200).json({ status: 'success', response: { message: 'Profile photo successfully changed' } });\n } catch (e) {\n req.logger.error(e);\n return res.status(500).json({ status: 'error', message: 'Error changing profile photo' });\n }\n}\n\nexport async function getUnreadMessages(req, res) {\n try {\n const response = await req.client.getUnreadMessages(false, false, true);\n return res.status(200).json({ status: 'success', response: response });\n } catch (e) {\n req.logger.error(e);\n return res.status(500).json({ status: 'error', response: 'Error on open list' });\n }\n}\n\nexport async function getChatIsOnline(req, res) {\n const { phone } = req.params;\n try {\n const response = await req.client.getChatIsOnline(`${phone}@c.us`);\n return res.status(200).json({ status: 'success', response: response });\n } catch (e) {\n req.logger.error(e);\n return res.status(500).json({ status: 'error', response: 'Error on get chat is online' });\n }\n}\n\nexport async function getLastSeen(req, res) {\n const { phone } = req.params;\n try {\n const response = await req.client.getLastSeen(`${phone}@c.us`);\n\n return res.status(200).json({ status: 'success', response: response });\n } catch (error) {\n req.logger.error(error);\n return res.status(500).json({ status: 'error', response: 'Error on get chat last seen' });\n }\n}\n\nexport async function getListMutes(req, res) {\n const { type = 'all' } = req.params;\n try {\n const response = await req.client.getListMutes(type);\n\n return res.status(200).json({ status: 'success', response: response });\n } catch (error) {\n req.logger.error(error);\n return res.status(500).json({ status: 'error', response: 'Error on get list mutes' });\n }\n}\n\nexport async function loadAndGetAllMessagesInChat(req, res) {\n const { phone, includeMe = true, includeNotifications = false } = req.params;\n try {\n const response = await req.client.loadAndGetAllMessagesInChat(`${phone}@c.us`, includeMe, includeNotifications);\n\n return res.status(200).json({ status: 'success', response: response });\n } catch (error) {\n req.logger.error(error);\n return res.status(500).json({ status: 'error', response: 'Error on open list' });\n }\n}\nexport async function getMessages(req, res) {\n const { phone } = req.params;\n const { count = 20, direction = 'before', id = 0 } = req.query;\n try {\n const response = await req.client.getMessages(`${phone}`, {\n count: parseInt(count),\n direction: direction,\n id: id,\n });\n return res.status(200).json({ status: 'success', response: response });\n } catch (e) {\n req.logger.error(e);\n return res.status(401).json({ status: 'error', response: 'Error on open list' });\n }\n}\n\nexport async function sendContactVcard(req, res) {\n const { phone, contactsId, name = null, isGroup = false } = req.body;\n try {\n let response;\n for (const contato of contactToArray(phone, isGroup)) {\n response = await req.client.sendContactVcard(`${contato}`, contactsId, name);\n }\n\n return res.status(200).json({ status: 'success', response: response });\n } catch (error) {\n req.logger.error(error);\n return res.status(500).json({ status: 'error', message: 'Error on send contact vcard' });\n }\n}\n\nexport async function sendMute(req, res) {\n const { phone, time, type = 'hours', isGroup = false } = req.body;\n\n try {\n let response;\n for (const contato of contactToArray(phone, isGroup)) {\n response = await req.client.sendMute(`${contato}`, time, type);\n }\n\n return res.status(200).json({ status: 'success', response: response });\n } catch (error) {\n req.logger.error(error);\n return res.status(500).json({ status: 'error', message: 'Error on send mute' });\n }\n}\n\nexport async function sendSeen(req, res) {\n const { phone } = req.body;\n const session = req.session;\n\n try {\n let results = [];\n for (const contato of phone) {\n results.push(await req.client.sendSeen(contato));\n }\n returnSucess(res, session, phone, results);\n } catch (error) {\n returnError(req, res, session, error);\n }\n}\n\nexport async function setChatState(req, res) {\n const { phone, chatstate, isGroup = false } = req.body;\n\n try {\n let response;\n for (const contato of contactToArray(phone, isGroup)) {\n response = await req.client.setChatState(`${contato}`, chatstate);\n }\n\n return res.status(200).json({ status: 'success', response: response });\n } catch (error) {\n req.logger.error(error);\n return res.status(500).json({ status: 'error', message: 'Error on send chat state' });\n }\n}\n\nexport async function setTemporaryMessages(req, res) {\n const { phone, value = true, isGroup = false } = req.body;\n\n try {\n let response;\n for (const contato of contactToArray(phone, isGroup)) {\n response = await req.client.setTemporaryMessages(`${contato}`, value);\n }\n\n return res.status(200).json({ status: 'success', response: response });\n } catch (error) {\n req.logger.error(error);\n return res.status(500).json({ status: 'error', message: 'Error on set temporary messages' });\n }\n}\n\nexport async function setTyping(req, res) {\n const { phone, value = true, isGroup = false } = req.body;\n try {\n let response;\n for (const contato of contactToArray(phone, isGroup)) {\n if (value) response = await req.client.startTyping(contato);\n else response = await req.client.stopTyping(contato);\n }\n\n return res.status(200).json({ status: 'success', response: response });\n } catch (error) {\n req.logger.error(error);\n return res.status(500).json({ status: 'error', message: 'Error on set typing' });\n }\n}\n\nexport async function checkNumberStatus(req, res) {\n const { phone } = req.params;\n try {\n let response;\n for (const contato of contactToArray(phone, false)) {\n response = await req.client.checkNumberStatus(`${contato}`);\n }\n\n return res.status(200).json({ status: 'success', response: response });\n } catch (error) {\n req.logger.error(error);\n return res.status(500).json({ status: 'error', message: 'Error on check number status' });\n }\n}\n\nexport async function getContact(req, res) {\n const { phone = true } = req.params;\n try {\n let response;\n for (const contato of contactToArray(phone, false)) {\n response = await req.client.getContact(contato);\n }\n\n return res.status(200).json({ status: 'success', response: response });\n } catch (error) {\n req.logger.error(error);\n return res.status(500).json({ status: 'error', message: 'Error on get contact' });\n }\n}\n\nexport async function getAllContacts(req, res) {\n try {\n const response = await req.client.getAllContacts();\n\n return res.status(200).json({ status: 'success', response: response });\n } catch (error) {\n req.logger.error(error);\n return res.status(500).json({ status: 'error', message: 'Error on get all constacts' });\n }\n}\n\nexport async function getNumberProfile(req, res) {\n const { phone = true } = req.params;\n try {\n let response;\n for (const contato of contactToArray(phone, false)) {\n response = await req.client.getNumberProfile(contato);\n }\n\n return res.status(200).json({ status: 'success', response: response });\n } catch (error) {\n req.logger.error(error);\n return res.status(500).json({ status: 'error', message: 'Error on get number profile' });\n }\n}\n\nexport async function getProfilePicFromServer(req, res) {\n const { phone = true } = req.params;\n try {\n let response;\n for (const contato of contactToArray(phone, false)) {\n response = await req.client.getProfilePicFromServer(contato);\n }\n\n return res.status(200).json({ status: 'success', response: response });\n } catch (error) {\n req.logger.error(error);\n return res.status(500).json({ status: 'error', message: 'Error on get profile pic' });\n }\n}\n\nexport async function getStatus(req, res) {\n const { phone = true } = req.params;\n try {\n let response;\n for (const contato of contactToArray(phone, false)) {\n response = await req.client.getStatus(contato);\n }\n return res.status(200).json({ status: 'success', response: response });\n } catch (error) {\n req.logger.error(error);\n return res.status(500).json({ status: 'error', message: 'Error on get status' });\n }\n}\n\nexport async function setProfileStatus(req, res) {\n const { status } = req.body;\n try {\n let response = await req.client.setProfileStatus(status);\n\n return res.status(200).json({ status: 'success', response: response });\n } catch (e) {\n req.logger.error(e);\n return res.status(500).json({ status: 'error', message: 'Error on set profile status' });\n }\n}\n\nexport async function starMessage(req, res) {\n const { messageId, star = true } = req.body;\n try {\n let response = await req.client.starMessage(messageId, star);\n\n return res.status(200).json({ status: 'success', response: response });\n } catch (error) {\n req.logger.error(error);\n return res.status(500).json({ status: 'error', message: 'Error on start message' });\n }\n}\n\nexport async function chatWoot(req, res) {\n const { session } = req.params;\n const client = clientsArray[session];\n if (client == null || client.status !== 'CONNECTED') return;\n try {\n if (await client.isConnected()) {\n const event = req.body.event;\n\n if (event == 'conversation_status_changed' || event == 'conversation_resolved' || req.body.private) {\n return res.status(200).json({ status: 'success', message: 'Success on receive chatwoot' });\n }\n\n const {\n message_type,\n phone = req.body.conversation.meta.sender.phone_number.replace('+', ''),\n message = req.body.conversation.messages[0],\n } = req.body;\n\n if (event != 'message_created' && message_type != 'outgoing') return res.status(200);\n for (const contato of contactToArray(phone, false)) {\n if (message_type == 'outgoing') {\n if (message.attachments) {\n let base_url = `${client.config.chatWoot.baseURL}/${message.attachments[0].data_url.substring(\n message.attachments[0].data_url.indexOf('/rails/') + 1\n )}`;\n await client.sendFile(`${contato}`, base_url, 'file', message.content);\n } else {\n await client.sendText(contato, message.content);\n }\n }\n }\n return res.status(200).json({ status: 'success', message: 'Success on receive chatwoot' });\n }\n } catch (e) {\n console.log(e);\n return res.status(400).json({ status: 'error', message: 'Error on receive chatwoot' });\n }\n}\n"],"mappings":"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"}
1
+ {"version":3,"file":"deviceController.js","names":["returnSucess","res","session","phone","data","status","json","response","message","contact","returnError","req","error","logger","log","setProfileName","name","body","result","client","showAllContacts","contacts","getAllContacts","getAllChats","mapper","e","getAllChatsWithMessages","getAllMessagesInChat","params","isGroup","includeMe","includeNotifications","query","contato","contactToArray","getAllNewMessages","getAllUnreadMessages","getChatById","allMessages","dir","fs","existsSync","mkdirSync","map","type","download","serverOptions","host","port","t","mime","extension","mimetype","getMessageById","messageId","chatId","user","getBatteryLevel","getHostDevice","phoneNumber","getWid","getPhoneNumber","getBlockList","blocked","split","deleteChat","results","clearChat","archiveChat","value","deleteMessage","reply","text","messageid","forwardMessages","markUnseenMessage","blockContact","unblockContact","pinChat","state","setProfilePic","file","path","pathFile","unlinkAsync","getUnreadMessages","getChatIsOnline","getLastSeen","getListMutes","loadAndGetAllMessagesInChat","getMessages","count","direction","id","parseInt","sendContactVcard","contactsId","sendMute","time","sendSeen","push","setChatState","chatstate","setTemporaryMessages","setTyping","startTyping","stopTyping","checkNumberStatus","getContact","getNumberProfile","getProfilePicFromServer","getStatus","setProfileStatus","rejectCall","callId","starMessage","star","chatWoot","clientsArray","isConnected","event","private","message_type","conversation","meta","sender","phone_number","replace","messages","attachments","base_url","config","baseURL","data_url","substring","indexOf","sendFile","content","sendText","console"],"sources":["../../src/controller/deviceController.js"],"sourcesContent":["/*\n * Copyright 2021 WPPConnect Team\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\nimport fs from 'fs';\nimport { download } from './sessionController';\nimport { contactToArray, unlinkAsync } from '../util/functions';\nimport mime from 'mime-types';\nimport { clientsArray } from '../util/sessionUtil';\n\nfunction returnSucess(res, session, phone, data) {\n res.status(201).json({\n status: 'Success',\n response: {\n message: 'Information retrieved successfully.',\n contact: phone,\n session: session,\n data: data,\n },\n });\n}\n\nfunction returnError(req, res, session, error) {\n req.logger.error(error);\n res.status(400).json({\n status: 'Error',\n response: {\n message: 'Error retrieving information',\n session: session,\n log: error,\n },\n });\n}\n\nexport async function setProfileName(req, res) {\n const { name } = req.body;\n\n if (!name) return res.status(400).json({ status: 'error', message: 'Parameter name is required!' });\n\n try {\n const result = await req.client.setProfileName(name);\n return res.status(200).json({ status: 'success', response: result });\n } catch (error) {\n req.logger.error(error);\n res.status(500).json({ status: 'error', message: 'Error on set profile name.' });\n }\n}\n\nexport async function showAllContacts(req, res) {\n try {\n const contacts = await req.client.getAllContacts();\n res.status(200).json({ status: 'success', response: contacts });\n } catch (error) {\n req.logger.error(error);\n res.status(500).json({ status: 'error', message: 'Error fetching contacts' });\n }\n}\n\nexport async function getAllChats(req, res) {\n try {\n const response = await req.client.getAllChats();\n return res.status(200).json({ status: 'success', response: response, mapper: 'chat' });\n } catch (e) {\n req.logger.error(e);\n return res.status(500).json({ status: 'error', message: 'Error on get all chats' });\n }\n}\n\nexport async function getAllChatsWithMessages(req, res) {\n try {\n const response = await req.client.getAllChatsWithMessages();\n return res.status(200).json({ status: 'success', response: response });\n } catch (e) {\n req.logger.error(e);\n return res.status(500).json({ status: 'error', message: 'Error on get all chats whit messages' });\n }\n}\n\nexport async function getAllMessagesInChat(req, res) {\n try {\n let { phone } = req.params;\n const { isGroup = false, includeMe = true, includeNotifications = true } = req.query;\n\n let response;\n for (const contato of contactToArray(phone, isGroup)) {\n response = await req.client.getAllMessagesInChat(contato, includeMe, includeNotifications);\n }\n\n return res.status(200).json({ status: 'success', response: response });\n } catch (e) {\n req.logger.error(e);\n return res.status(500).json({ status: 'error', message: 'Error on get all messages in chat' });\n }\n}\n\nexport async function getAllNewMessages(req, res) {\n try {\n const response = await req.client.getAllNewMessages();\n return res.status(200).json({ status: 'success', response: response });\n } catch (e) {\n req.logger.error(e);\n return res.status(500).json({ status: 'error', message: 'Error on get all messages in chat' });\n }\n}\n\nexport async function getAllUnreadMessages(req, res) {\n try {\n const response = await req.client.getAllUnreadMessages();\n return res.status(200).json({ status: 'success', response: response });\n } catch (e) {\n req.logger.error(e);\n return res.status(500).json({ status: 'error', message: 'Error on get all messages in chat' });\n }\n}\n\nexport async function getChatById(req, res) {\n const { phone } = req.params;\n const { isGroup } = req.query;\n\n try {\n let allMessages = {};\n\n if (isGroup) {\n allMessages = await req.client.getAllMessagesInChat(`${phone}@g.us`, true, true);\n } else {\n allMessages = await req.client.getAllMessagesInChat(`${phone}@c.us`, true, true);\n }\n\n let dir = './WhatsAppImages';\n if (!fs.existsSync(dir)) {\n fs.mkdirSync(dir);\n }\n\n allMessages.map((message) => {\n if (message.type === 'sticker') {\n download(message, req.client, req.logger);\n message.body = `${req.serverOptions.host}:${req.serverOptions.port}/files/file${message.t}.${mime.extension(\n message.mimetype\n )}`;\n }\n });\n\n return res.status(200).json({ status: 'success', response: allMessages });\n } catch (e) {\n req.logger.error(e);\n return res.status(500).json({ status: 'error', message: 'Error changing chat by Id' });\n }\n}\n\nexport async function getMessageById(req, res) {\n const session = req.session;\n const { messageId } = req.params;\n\n try {\n let result;\n\n result = await req.client.getMessageById(messageId);\n\n returnSucess(res, session, result.chatId.user, result);\n } catch (error) {\n returnError(req, res, session, error);\n }\n}\n\nexport async function getBatteryLevel(req, res) {\n try {\n let response = await req.client.getBatteryLevel();\n return res.status(200).json({ status: 'Success', response: response });\n } catch (e) {\n req.logger.error(e);\n return res.status(500).json({ status: 'error', message: 'Error retrieving battery status' });\n }\n}\n\nexport async function getHostDevice(req, res) {\n try {\n const response = await req.client.getHostDevice();\n const phoneNumber = await req.client.getWid();\n return res.status(200).json({ status: 'success', response: { ...response, phoneNumber }, mapper: 'device' });\n } catch (e) {\n req.logger.error(e);\n return res.status(500).json({ status: 'error', message: 'Erro ao recuperar dados do telefone' });\n }\n}\n\nexport async function getPhoneNumber(req, res) {\n try {\n const phoneNumber = await req.client.getWid();\n return res.status(200).json({ status: 'success', response: phoneNumber, mapper: 'device' });\n } catch (e) {\n req.logger.error(e);\n return res.status(500).json({ status: 'error', message: 'Error retrieving phone number' });\n }\n}\n\nexport async function getBlockList(req, res) {\n let response = await req.client.getBlockList();\n\n try {\n const blocked = response.map((contato) => {\n return { phone: contato ? contato.split('@')[0] : '' };\n });\n\n return res.status(200).json({ status: 'success', response: blocked });\n } catch (e) {\n req.logger.error(e);\n return res.status(500).json({ status: 'error', message: 'Error retrieving blocked contact list' });\n }\n}\n\nexport async function deleteChat(req, res) {\n const { phone } = req.body;\n const session = req.session;\n\n try {\n let results = {};\n for (const contato of phone) {\n results[contato] = await req.client.deleteChat(contato);\n }\n returnSucess(res, session, phone, results);\n } catch (error) {\n returnError(req, res, session, error);\n }\n}\n\nexport async function clearChat(req, res) {\n const { phone } = req.body;\n const session = req.session;\n\n try {\n let results = {};\n for (const contato of phone) {\n results[contato] = await req.client.clearChat(contato);\n }\n returnSucess(res, session, phone, results);\n } catch (error) {\n returnError(req, res, session, error);\n }\n}\n\nexport async function archiveChat(req, res) {\n const { phone, value = true, isGroup = false } = req.body;\n\n try {\n let response;\n response = await req.client.archiveChat(`${phone}`, value);\n return res.status(201).json({ status: 'success', response: response });\n } catch (e) {\n req.logger.error(e);\n return res.status(500).json({ status: 'error', message: 'Error on archive chat' });\n }\n}\n\nexport async function deleteMessage(req, res) {\n const { phone, messageId } = req.body;\n\n try {\n await req.client.deleteMessage(`${phone}@c.us`, [messageId]);\n\n return res.status(200).json({ status: 'success', response: { message: 'Message deleted' } });\n } catch (e) {\n req.logger.error(e);\n return res.status(500).json({ status: 'error', message: 'Error on delete message' });\n }\n}\n\nexport async function reply(req, res) {\n const { phone, text, messageid } = req.body;\n\n try {\n let response = await req.client.reply(`${phone}@c.us`, text, messageid);\n return res.status(200).json({ status: 'success', response: response });\n } catch (e) {\n req.logger.error(e);\n return res.status(500).json({ status: 'error', message: 'Error replying message' });\n }\n}\n\nexport async function forwardMessages(req, res) {\n const { phone, messageId, isGroup = false } = req.body;\n\n try {\n let response;\n\n if (!isGroup) {\n response = await req.client.forwardMessages(`${phone}`, [messageId], false);\n } else {\n response = await req.client.forwardMessages(`${phone}`, [messageId], false);\n }\n\n return res.status(201).json({ status: 'success', response: response });\n } catch (e) {\n req.logger.error(e);\n return res.status(500).json({ status: 'error', message: 'Error forwarding message' });\n }\n}\n\nexport async function markUnseenMessage(req, res) {\n const { phone } = req.body;\n\n try {\n await req.client.markUnseenMessage(`${phone}`);\n return res.status(200).json({ status: 'success', response: { message: 'unseen checked' } });\n } catch (e) {\n req.logger.error(e);\n return res.status(500).json({ status: 'error', message: 'Error on mark unseen' });\n }\n}\n\nexport async function blockContact(req, res) {\n const { phone } = req.body;\n\n try {\n await req.client.blockContact(`${phone}`);\n return res.status(200).json({ status: 'success', response: { message: 'Contact blocked' } });\n } catch (e) {\n req.logger.error(e);\n return res.status(500).json({ status: 'error', message: 'Error on block contact' });\n }\n}\n\nexport async function unblockContact(req, res) {\n const { phone } = req.body;\n\n try {\n await req.client.unblockContact(`${phone}`);\n return res.status(200).json({ status: 'success', response: { message: 'Contact UnBlocked' } });\n } catch (e) {\n req.logger.error(e);\n return res.status(500).json({ status: 'error', message: 'Error on unlock contact' });\n }\n}\n\nexport async function pinChat(req, res) {\n const { phone, state } = req.body;\n\n try {\n for (const contato of phone) {\n await req.client.pinChat(contato, state === 'true', false);\n }\n\n return res.status(200).json({ status: 'success', response: { message: 'Chat fixed' } });\n } catch (e) {\n req.logger.error(e);\n return res.status(500).json({ status: 'error', message: e.text || 'Error on pin chat' });\n }\n}\n\nexport async function setProfilePic(req, res) {\n if (!req.file) return res.status(400).json({ status: 'Error', message: 'File parameter is required!' });\n\n try {\n const { path: pathFile } = req.file;\n\n await req.client.setProfilePic(pathFile);\n await unlinkAsync(pathFile);\n\n return res.status(200).json({ status: 'success', response: { message: 'Profile photo successfully changed' } });\n } catch (e) {\n req.logger.error(e);\n return res.status(500).json({ status: 'error', message: 'Error changing profile photo' });\n }\n}\n\nexport async function getUnreadMessages(req, res) {\n try {\n const response = await req.client.getUnreadMessages(false, false, true);\n return res.status(200).json({ status: 'success', response: response });\n } catch (e) {\n req.logger.error(e);\n return res.status(500).json({ status: 'error', response: 'Error on open list' });\n }\n}\n\nexport async function getChatIsOnline(req, res) {\n const { phone } = req.params;\n try {\n const response = await req.client.getChatIsOnline(`${phone}@c.us`);\n return res.status(200).json({ status: 'success', response: response });\n } catch (e) {\n req.logger.error(e);\n return res.status(500).json({ status: 'error', response: 'Error on get chat is online' });\n }\n}\n\nexport async function getLastSeen(req, res) {\n const { phone } = req.params;\n try {\n const response = await req.client.getLastSeen(`${phone}@c.us`);\n\n return res.status(200).json({ status: 'success', response: response });\n } catch (error) {\n req.logger.error(error);\n return res.status(500).json({ status: 'error', response: 'Error on get chat last seen' });\n }\n}\n\nexport async function getListMutes(req, res) {\n const { type = 'all' } = req.params;\n try {\n const response = await req.client.getListMutes(type);\n\n return res.status(200).json({ status: 'success', response: response });\n } catch (error) {\n req.logger.error(error);\n return res.status(500).json({ status: 'error', response: 'Error on get list mutes' });\n }\n}\n\nexport async function loadAndGetAllMessagesInChat(req, res) {\n const { phone, includeMe = true, includeNotifications = false } = req.params;\n try {\n const response = await req.client.loadAndGetAllMessagesInChat(`${phone}@c.us`, includeMe, includeNotifications);\n\n return res.status(200).json({ status: 'success', response: response });\n } catch (error) {\n req.logger.error(error);\n return res.status(500).json({ status: 'error', response: 'Error on open list' });\n }\n}\nexport async function getMessages(req, res) {\n const { phone } = req.params;\n const { count = 20, direction = 'before', id = 0 } = req.query;\n try {\n const response = await req.client.getMessages(`${phone}`, {\n count: parseInt(count),\n direction: direction,\n id: id,\n });\n return res.status(200).json({ status: 'success', response: response });\n } catch (e) {\n req.logger.error(e);\n return res.status(401).json({ status: 'error', response: 'Error on open list' });\n }\n}\n\nexport async function sendContactVcard(req, res) {\n const { phone, contactsId, name = null, isGroup = false } = req.body;\n try {\n let response;\n for (const contato of contactToArray(phone, isGroup)) {\n response = await req.client.sendContactVcard(`${contato}`, contactsId, name);\n }\n\n return res.status(200).json({ status: 'success', response: response });\n } catch (error) {\n req.logger.error(error);\n return res.status(500).json({ status: 'error', message: 'Error on send contact vcard' });\n }\n}\n\nexport async function sendMute(req, res) {\n const { phone, time, type = 'hours', isGroup = false } = req.body;\n\n try {\n let response;\n for (const contato of contactToArray(phone, isGroup)) {\n response = await req.client.sendMute(`${contato}`, time, type);\n }\n\n return res.status(200).json({ status: 'success', response: response });\n } catch (error) {\n req.logger.error(error);\n return res.status(500).json({ status: 'error', message: 'Error on send mute' });\n }\n}\n\nexport async function sendSeen(req, res) {\n const { phone } = req.body;\n const session = req.session;\n\n try {\n let results = [];\n for (const contato of phone) {\n results.push(await req.client.sendSeen(contato));\n }\n returnSucess(res, session, phone, results);\n } catch (error) {\n returnError(req, res, session, error);\n }\n}\n\nexport async function setChatState(req, res) {\n const { phone, chatstate, isGroup = false } = req.body;\n\n try {\n let response;\n for (const contato of contactToArray(phone, isGroup)) {\n response = await req.client.setChatState(`${contato}`, chatstate);\n }\n\n return res.status(200).json({ status: 'success', response: response });\n } catch (error) {\n req.logger.error(error);\n return res.status(500).json({ status: 'error', message: 'Error on send chat state' });\n }\n}\n\nexport async function setTemporaryMessages(req, res) {\n const { phone, value = true, isGroup = false } = req.body;\n\n try {\n let response;\n for (const contato of contactToArray(phone, isGroup)) {\n response = await req.client.setTemporaryMessages(`${contato}`, value);\n }\n\n return res.status(200).json({ status: 'success', response: response });\n } catch (error) {\n req.logger.error(error);\n return res.status(500).json({ status: 'error', message: 'Error on set temporary messages' });\n }\n}\n\nexport async function setTyping(req, res) {\n const { phone, value = true, isGroup = false } = req.body;\n try {\n let response;\n for (const contato of contactToArray(phone, isGroup)) {\n if (value) response = await req.client.startTyping(contato);\n else response = await req.client.stopTyping(contato);\n }\n\n return res.status(200).json({ status: 'success', response: response });\n } catch (error) {\n req.logger.error(error);\n return res.status(500).json({ status: 'error', message: 'Error on set typing' });\n }\n}\n\nexport async function checkNumberStatus(req, res) {\n const { phone } = req.params;\n try {\n let response;\n for (const contato of contactToArray(phone, false)) {\n response = await req.client.checkNumberStatus(`${contato}`);\n }\n\n return res.status(200).json({ status: 'success', response: response });\n } catch (error) {\n req.logger.error(error);\n return res.status(500).json({ status: 'error', message: 'Error on check number status' });\n }\n}\n\nexport async function getContact(req, res) {\n const { phone = true } = req.params;\n try {\n let response;\n for (const contato of contactToArray(phone, false)) {\n response = await req.client.getContact(contato);\n }\n\n return res.status(200).json({ status: 'success', response: response });\n } catch (error) {\n req.logger.error(error);\n return res.status(500).json({ status: 'error', message: 'Error on get contact' });\n }\n}\n\nexport async function getAllContacts(req, res) {\n try {\n const response = await req.client.getAllContacts();\n\n return res.status(200).json({ status: 'success', response: response });\n } catch (error) {\n req.logger.error(error);\n return res.status(500).json({ status: 'error', message: 'Error on get all constacts' });\n }\n}\n\nexport async function getNumberProfile(req, res) {\n const { phone = true } = req.params;\n try {\n let response;\n for (const contato of contactToArray(phone, false)) {\n response = await req.client.getNumberProfile(contato);\n }\n\n return res.status(200).json({ status: 'success', response: response });\n } catch (error) {\n req.logger.error(error);\n return res.status(500).json({ status: 'error', message: 'Error on get number profile' });\n }\n}\n\nexport async function getProfilePicFromServer(req, res) {\n const { phone = true } = req.params;\n try {\n let response;\n for (const contato of contactToArray(phone, false)) {\n response = await req.client.getProfilePicFromServer(contato);\n }\n\n return res.status(200).json({ status: 'success', response: response });\n } catch (error) {\n req.logger.error(error);\n return res.status(500).json({ status: 'error', message: 'Error on get profile pic' });\n }\n}\n\nexport async function getStatus(req, res) {\n const { phone = true } = req.params;\n try {\n let response;\n for (const contato of contactToArray(phone, false)) {\n response = await req.client.getStatus(contato);\n }\n return res.status(200).json({ status: 'success', response: response });\n } catch (error) {\n req.logger.error(error);\n return res.status(500).json({ status: 'error', message: 'Error on get status' });\n }\n}\n\nexport async function setProfileStatus(req, res) {\n const { status } = req.body;\n try {\n let response = await req.client.setProfileStatus(status);\n\n return res.status(200).json({ status: 'success', response: response });\n } catch (e) {\n req.logger.error(e);\n return res.status(500).json({ status: 'error', message: 'Error on set profile status' });\n }\n}\nexport async function rejectCall(req, res) {\n const { callId } = req.body;\n try {\n let response = await req.client.rejectCall(callId);\n\n return res.status(200).json({ status: 'success', response: response });\n } catch (e) {\n req.logger.error(e);\n return res.status(500).json({ status: 'error', message: 'Error on rejectCall' });\n }\n}\n\nexport async function starMessage(req, res) {\n const { messageId, star = true } = req.body;\n try {\n let response = await req.client.starMessage(messageId, star);\n\n return res.status(200).json({ status: 'success', response: response });\n } catch (error) {\n req.logger.error(error);\n return res.status(500).json({ status: 'error', message: 'Error on start message' });\n }\n}\n\nexport async function chatWoot(req, res) {\n const { session } = req.params;\n const client = clientsArray[session];\n if (client == null || client.status !== 'CONNECTED') return;\n try {\n if (await client.isConnected()) {\n const event = req.body.event;\n\n if (event == 'conversation_status_changed' || event == 'conversation_resolved' || req.body.private) {\n return res.status(200).json({ status: 'success', message: 'Success on receive chatwoot' });\n }\n\n const {\n message_type,\n phone = req.body.conversation.meta.sender.phone_number.replace('+', ''),\n message = req.body.conversation.messages[0],\n } = req.body;\n\n if (event != 'message_created' && message_type != 'outgoing') return res.status(200);\n for (const contato of contactToArray(phone, false)) {\n if (message_type == 'outgoing') {\n if (message.attachments) {\n let base_url = `${client.config.chatWoot.baseURL}/${message.attachments[0].data_url.substring(\n message.attachments[0].data_url.indexOf('/rails/') + 1\n )}`;\n await client.sendFile(`${contato}`, base_url, 'file', message.content);\n } else {\n await client.sendText(contato, message.content);\n }\n }\n }\n return res.status(200).json({ status: 'success', message: 'Success on receive chatwoot' });\n }\n } catch (e) {\n console.log(e);\n return res.status(400).json({ status: 'error', message: 'Error on receive chatwoot' });\n }\n}\n"],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- "use strict";Object.defineProperty(exports, "__esModule", { value: true });exports.replyMessage = replyMessage;exports.sendButtons = sendButtons;exports.sendButtonsList = sendButtonsList;exports.sendFile = sendFile;exports.sendFile64 = sendFile64;exports.sendImage = sendImage;exports.sendImageStorie = sendImageStorie;exports.sendLinkPreview = sendLinkPreview;exports.sendLocation = sendLocation;exports.sendMentioned = sendMentioned;exports.sendMessage = sendMessage;exports.sendStatusText = sendStatusText;exports.sendTextStorie = sendTextStorie;exports.sendVideoStorie = sendVideoStorie;exports.sendVoice = sendVoice;exports.sendVoice64 = sendVoice64;
1
+ "use strict";Object.defineProperty(exports, "__esModule", { value: true });exports.replyMessage = replyMessage;exports.sendButtons = sendButtons;exports.sendFile = sendFile;exports.sendFile64 = sendFile64;exports.sendImage = sendImage;exports.sendImageStorie = sendImageStorie;exports.sendLinkPreview = sendLinkPreview;exports.sendListMessage = sendListMessage;exports.sendLocation = sendLocation;exports.sendMentioned = sendMentioned;exports.sendMessage = sendMessage;exports.sendStatusText = sendStatusText;exports.sendTextStorie = sendTextStorie;exports.sendVideoStorie = sendVideoStorie;exports.sendVoice = sendVoice;exports.sendVoice64 = sendVoice64;
2
2
 
3
3
 
4
4
 
@@ -191,27 +191,18 @@ async function sendButtons(req, res) {
191
191
  }
192
192
  }
193
193
 
194
- async function sendButtonsList(req, res) {
195
- const { phone, message = '', title, buttons, buttonText = 'SELECIONE UMA OPÇÃO' } = req.body;
194
+ async function sendListMessage(req, res) {
195
+ const { phone, description = '', sections, buttonText = 'SELECIONE UMA OPÇÃO' } = req.body;
196
196
 
197
197
  try {
198
198
  let results = [];
199
199
 
200
200
  for (const contact of phone) {
201
201
  results.push(
202
- await req.client.sendMessageOptions(contact, null, {
203
- type: 'list',
204
- list: {
205
- listType: 1,
206
- title: title,
207
- description: message,
208
- buttonText: buttonText,
209
- sections: [
210
- {
211
- rows: buttons }] } }));
212
-
213
-
214
-
202
+ await req.client.sendListMessage(contact, {
203
+ buttonText: buttonText,
204
+ description: description,
205
+ sections: sections }));
215
206
 
216
207
 
217
208
  }
@@ -1 +1 @@
1
- {"version":3,"file":"messageController.js","names":["returnError","req","res","error","logger","status","json","message","returnSucess","data","response","mapper","sendMessage","phone","body","options","results","contato","push","client","sendText","length","io","emit","sendImage","filename","caption","path","file","send","pathFile","unlinkAsync","sendFile","sendFile64","base64","sendFileFromBase64","sendVoice","quotedMessageId","sendPtt","sendVoice64","base64Ptt","sendPttFromBase64","sendLinkPreview","url","sendLocation","lat","lng","title","sendButtons","contact","sendButtonsList","buttons","buttonText","sendMessageOptions","type","list","listType","description","sections","rows","sendStatusText","replyMessage","messageId","reply","to","sendMentioned","mentioned","sendTextStorie","text","sendImageStorie","sendVideoStorie"],"sources":["../../src/controller/messageController.js"],"sourcesContent":["/*\n * Copyright 2021 WPPConnect Team\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\nimport { unlinkAsync } from '../util/functions';\n\nfunction returnError(req, res, error) {\n req.logger.error(error);\n res.status(500).json({ status: 'Error', message: 'Erro ao enviar a mensagem.' });\n}\n\nasync function returnSucess(res, data) {\n res.status(201).json({ status: 'success', response: data, mapper: 'return' });\n}\n\nexport async function sendMessage(req, res) {\n const { phone, message } = req.body;\n\n const options = req.body.options || {};\n\n try {\n let results = [];\n for (const contato of phone) {\n results.push(await req.client.sendText(contato, message, options));\n }\n\n if (results.length === 0) return res.status(400).json('Error sending message');\n req.io.emit('mensagem-enviada', results);\n returnSucess(res, results);\n } catch (error) {\n returnError(req, res, error);\n }\n}\n\nexport async function sendImage(req, res) {\n const { phone, filename = 'image-api.jpg', caption, path } = req.body;\n\n if (!path && !req.file)\n return res.status(401).send({\n message: 'Sending the file is mandatory',\n });\n\n const pathFile = path || req.file.path;\n\n try {\n let results = [];\n for (const contato of phone) {\n results.push(await req.client.sendImage(contato, pathFile, filename, caption));\n }\n\n if (results.length === 0) return res.status(400).json('Error sending message');\n if (req.file) await unlinkAsync(pathFile);\n returnSucess(res, results);\n } catch (error) {\n returnError(req, res, error);\n }\n}\n\nexport async function sendFile(req, res) {\n const { phone, path, filename = 'file', message } = req.body;\n\n if (!path && !req.file)\n return res.status(401).send({\n message: 'Sending the file is mandatory',\n });\n\n const pathFile = path || req.file.path;\n\n try {\n let results = [];\n for (const contato of phone) {\n results.push(await req.client.sendFile(contato, pathFile, filename, message));\n }\n\n if (results.length === 0) return res.status(400).json('Error sending message');\n if (req.file) await unlinkAsync(pathFile);\n returnSucess(res, results);\n } catch (error) {\n returnError(req, res, error);\n }\n}\n\nexport async function sendFile64(req, res) {\n const { base64, phone, filename = 'file', message } = req.body;\n\n if (!base64) return res.status(401).send({ message: 'The base64 of the file was not informed' });\n\n try {\n let results = [];\n for (const contato of phone) {\n results.push(await req.client.sendFileFromBase64(contato, base64, filename, message));\n }\n\n if (results.length === 0) return res.status(400).json('Error sending message');\n returnSucess(res, results);\n } catch (error) {\n returnError(req, res, error);\n }\n}\n\nexport async function sendVoice(req, res) {\n const { phone, path, filename = 'Voice Audio', message, quotedMessageId } = req.body;\n\n try {\n let results = [];\n for (const contato of phone) {\n results.push(await req.client.sendPtt(contato, path, filename, message, quotedMessageId));\n }\n\n if (results.length === 0) return res.status(400).json('Error sending message');\n returnSucess(res, results);\n } catch (error) {\n returnError(req, res, error);\n }\n}\n\nexport async function sendVoice64(req, res) {\n const { phone, base64Ptt } = req.body;\n\n try {\n let results = [];\n for (const contato of phone) {\n results.push(await req.client.sendPttFromBase64(contato, base64Ptt, 'Voice Audio'));\n }\n\n if (results.length === 0) return res.status(400).json('Error sending message');\n returnSucess(res, results);\n } catch (error) {\n returnError(req, res, error);\n }\n}\n\nexport async function sendLinkPreview(req, res) {\n const { phone, url, caption } = req.body;\n\n try {\n let results = [];\n for (const contato of phone) {\n results.push(await req.client.sendLinkPreview(`${contato}`, url, caption));\n }\n\n if (results.length === 0) return res.status(400).json('Error sending message');\n returnSucess(res, results);\n } catch (error) {\n returnError(req, res, error);\n }\n}\n\nexport async function sendLocation(req, res) {\n const { phone, lat, lng, title } = req.body;\n\n try {\n let results = [];\n for (const contato of phone) {\n results.push(await req.client.sendLocation(contato, lat, lng, title));\n }\n\n if (results.length === 0) return res.status(400).json('Error sending message');\n returnSucess(res, results);\n } catch (error) {\n returnError(req, res, error);\n }\n}\n\nexport async function sendButtons(req, res) {\n const { phone, message, options } = req.body;\n\n try {\n let results = [];\n\n for (const contact of phone) {\n results.push(await req.client.sendText(contact, message, options));\n }\n\n if (results.length === 0) return returnError(req, res, 'Error sending message with buttons');\n\n returnSucess(res, phone, results);\n } catch (error) {\n returnError(req, res, error);\n }\n}\n\nexport async function sendButtonsList(req, res) {\n const { phone, message = '', title, buttons, buttonText = 'SELECIONE UMA OPÇÃO' } = req.body;\n\n try {\n let results = [];\n\n for (const contact of phone) {\n results.push(\n await req.client.sendMessageOptions(contact, null, {\n type: 'list',\n list: {\n listType: 1,\n title: title,\n description: message,\n buttonText: buttonText,\n sections: [\n {\n rows: buttons,\n },\n ],\n },\n })\n );\n }\n\n if (results.length === 0) return returnError(req, res, 'Error sending list buttons');\n\n returnSucess(res, phone, results);\n } catch (error) {\n returnError(req, res, error);\n }\n}\n\nexport async function sendStatusText(req, res) {\n const { message } = req.body;\n\n try {\n let results = [];\n results.push(await req.client.sendText('status@broadcast', message));\n\n if (results.length === 0) return res.status(400).json('Error sending message');\n returnSucess(res, results);\n } catch (error) {\n returnError(req, res, error);\n }\n}\n\nexport async function replyMessage(req, res) {\n const { phone, message, messageId } = req.body;\n\n try {\n let results = [];\n for (const contato of phone) {\n results.push(await req.client.reply(contato, message, messageId));\n }\n\n if (results.length === 0) return res.status(400).json('Error sending message');\n req.io.emit('mensagem-enviada', { message: message, to: phone });\n returnSucess(res, results);\n } catch (error) {\n returnError(req, res, error);\n }\n}\n\nexport async function sendMentioned(req, res) {\n const { phone, message, mentioned } = req.body;\n\n try {\n let response;\n for (const contato of phone) {\n response = await req.client.sendMentioned(`${contato}`, message, mentioned);\n }\n\n return res.status(201).json({ status: 'success', response: response });\n } catch (error) {\n req.logger.error(error);\n return res.status(500).json({ status: 'error', message: 'Error on send message mentioned' });\n }\n}\n\nexport async function sendTextStorie(req, res) {\n const { text } = req.body;\n\n if (!text)\n return res.status(401).send({\n message: 'Text was not informed',\n });\n\n try {\n let results = [];\n results.push(await req.client.sendText('status@broadcast', text));\n\n if (results.length === 0) return res.status(400).json('Error sending the text of stories');\n returnSucess(res, results);\n } catch (error) {\n returnError(req, res, error);\n }\n}\n\nexport async function sendImageStorie(req, res) {\n const { path, filename = 'image-storie', caption } = req.body;\n\n if (!path && !req.file)\n return res.status(401).send({\n message: 'Sending the image is mandatory',\n });\n\n const pathFile = path || req.file.path;\n\n try {\n let results = [];\n results.push(await req.client.sendImage('status@broadcast', pathFile, filename, caption));\n\n if (results.length === 0) return res.status(400).json('Error sending the image of stories');\n if (req.file) await unlinkAsync(pathFile);\n returnSucess(res, results);\n } catch (error) {\n returnError(req, res, error);\n }\n}\n\nexport async function sendVideoStorie(req, res) {\n const { path, filename = 'video', caption } = req.body;\n\n if (!path && !req.file)\n return res.status(401).send({\n message: 'Sending the Video is mandatory',\n });\n\n const pathFile = path || req.file.path;\n\n try {\n let results = [];\n\n results.push(await req.client.sendFile('status@broadcast', pathFile, filename, caption));\n\n if (results.length === 0) return res.status(400).json('Error sending message');\n if (req.file) await unlinkAsync(pathFile);\n returnSucess(res, results);\n } catch (error) {\n returnError(req, res, error);\n }\n}\n"],"mappings":"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"}
1
+ {"version":3,"file":"messageController.js","names":["returnError","req","res","error","logger","status","json","message","returnSucess","data","response","mapper","sendMessage","phone","body","options","results","contato","push","client","sendText","length","io","emit","sendImage","filename","caption","path","file","send","pathFile","unlinkAsync","sendFile","sendFile64","base64","sendFileFromBase64","sendVoice","quotedMessageId","sendPtt","sendVoice64","base64Ptt","sendPttFromBase64","sendLinkPreview","url","sendLocation","lat","lng","title","sendButtons","contact","sendListMessage","description","sections","buttonText","sendStatusText","replyMessage","messageId","reply","to","sendMentioned","mentioned","sendTextStorie","text","sendImageStorie","sendVideoStorie"],"sources":["../../src/controller/messageController.js"],"sourcesContent":["/*\n * Copyright 2021 WPPConnect Team\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\nimport { unlinkAsync } from '../util/functions';\n\nfunction returnError(req, res, error) {\n req.logger.error(error);\n res.status(500).json({ status: 'Error', message: 'Erro ao enviar a mensagem.' });\n}\n\nasync function returnSucess(res, data) {\n res.status(201).json({ status: 'success', response: data, mapper: 'return' });\n}\n\nexport async function sendMessage(req, res) {\n const { phone, message } = req.body;\n\n const options = req.body.options || {};\n\n try {\n let results = [];\n for (const contato of phone) {\n results.push(await req.client.sendText(contato, message, options));\n }\n\n if (results.length === 0) return res.status(400).json('Error sending message');\n req.io.emit('mensagem-enviada', results);\n returnSucess(res, results);\n } catch (error) {\n returnError(req, res, error);\n }\n}\n\nexport async function sendImage(req, res) {\n const { phone, filename = 'image-api.jpg', caption, path } = req.body;\n\n if (!path && !req.file)\n return res.status(401).send({\n message: 'Sending the file is mandatory',\n });\n\n const pathFile = path || req.file.path;\n\n try {\n let results = [];\n for (const contato of phone) {\n results.push(await req.client.sendImage(contato, pathFile, filename, caption));\n }\n\n if (results.length === 0) return res.status(400).json('Error sending message');\n if (req.file) await unlinkAsync(pathFile);\n returnSucess(res, results);\n } catch (error) {\n returnError(req, res, error);\n }\n}\n\nexport async function sendFile(req, res) {\n const { phone, path, filename = 'file', message } = req.body;\n\n if (!path && !req.file)\n return res.status(401).send({\n message: 'Sending the file is mandatory',\n });\n\n const pathFile = path || req.file.path;\n\n try {\n let results = [];\n for (const contato of phone) {\n results.push(await req.client.sendFile(contato, pathFile, filename, message));\n }\n\n if (results.length === 0) return res.status(400).json('Error sending message');\n if (req.file) await unlinkAsync(pathFile);\n returnSucess(res, results);\n } catch (error) {\n returnError(req, res, error);\n }\n}\n\nexport async function sendFile64(req, res) {\n const { base64, phone, filename = 'file', message } = req.body;\n\n if (!base64) return res.status(401).send({ message: 'The base64 of the file was not informed' });\n\n try {\n let results = [];\n for (const contato of phone) {\n results.push(await req.client.sendFileFromBase64(contato, base64, filename, message));\n }\n\n if (results.length === 0) return res.status(400).json('Error sending message');\n returnSucess(res, results);\n } catch (error) {\n returnError(req, res, error);\n }\n}\n\nexport async function sendVoice(req, res) {\n const { phone, path, filename = 'Voice Audio', message, quotedMessageId } = req.body;\n\n try {\n let results = [];\n for (const contato of phone) {\n results.push(await req.client.sendPtt(contato, path, filename, message, quotedMessageId));\n }\n\n if (results.length === 0) return res.status(400).json('Error sending message');\n returnSucess(res, results);\n } catch (error) {\n returnError(req, res, error);\n }\n}\n\nexport async function sendVoice64(req, res) {\n const { phone, base64Ptt } = req.body;\n\n try {\n let results = [];\n for (const contato of phone) {\n results.push(await req.client.sendPttFromBase64(contato, base64Ptt, 'Voice Audio'));\n }\n\n if (results.length === 0) return res.status(400).json('Error sending message');\n returnSucess(res, results);\n } catch (error) {\n returnError(req, res, error);\n }\n}\n\nexport async function sendLinkPreview(req, res) {\n const { phone, url, caption } = req.body;\n\n try {\n let results = [];\n for (const contato of phone) {\n results.push(await req.client.sendLinkPreview(`${contato}`, url, caption));\n }\n\n if (results.length === 0) return res.status(400).json('Error sending message');\n returnSucess(res, results);\n } catch (error) {\n returnError(req, res, error);\n }\n}\n\nexport async function sendLocation(req, res) {\n const { phone, lat, lng, title } = req.body;\n\n try {\n let results = [];\n for (const contato of phone) {\n results.push(await req.client.sendLocation(contato, lat, lng, title));\n }\n\n if (results.length === 0) return res.status(400).json('Error sending message');\n returnSucess(res, results);\n } catch (error) {\n returnError(req, res, error);\n }\n}\n\nexport async function sendButtons(req, res) {\n const { phone, message, options } = req.body;\n\n try {\n let results = [];\n\n for (const contact of phone) {\n results.push(await req.client.sendText(contact, message, options));\n }\n\n if (results.length === 0) return returnError(req, res, 'Error sending message with buttons');\n\n returnSucess(res, phone, results);\n } catch (error) {\n returnError(req, res, error);\n }\n}\n\nexport async function sendListMessage(req, res) {\n const { phone, description = '', sections, buttonText = 'SELECIONE UMA OPÇÃO' } = req.body;\n\n try {\n let results = [];\n\n for (const contact of phone) {\n results.push(\n await req.client.sendListMessage(contact, {\n buttonText: buttonText,\n description: description,\n sections: sections,\n })\n );\n }\n\n if (results.length === 0) return returnError(req, res, 'Error sending list buttons');\n\n returnSucess(res, phone, results);\n } catch (error) {\n returnError(req, res, error);\n }\n}\n\nexport async function sendStatusText(req, res) {\n const { message } = req.body;\n\n try {\n let results = [];\n results.push(await req.client.sendText('status@broadcast', message));\n\n if (results.length === 0) return res.status(400).json('Error sending message');\n returnSucess(res, results);\n } catch (error) {\n returnError(req, res, error);\n }\n}\n\nexport async function replyMessage(req, res) {\n const { phone, message, messageId } = req.body;\n\n try {\n let results = [];\n for (const contato of phone) {\n results.push(await req.client.reply(contato, message, messageId));\n }\n\n if (results.length === 0) return res.status(400).json('Error sending message');\n req.io.emit('mensagem-enviada', { message: message, to: phone });\n returnSucess(res, results);\n } catch (error) {\n returnError(req, res, error);\n }\n}\n\nexport async function sendMentioned(req, res) {\n const { phone, message, mentioned } = req.body;\n\n try {\n let response;\n for (const contato of phone) {\n response = await req.client.sendMentioned(`${contato}`, message, mentioned);\n }\n\n return res.status(201).json({ status: 'success', response: response });\n } catch (error) {\n req.logger.error(error);\n return res.status(500).json({ status: 'error', message: 'Error on send message mentioned' });\n }\n}\n\nexport async function sendTextStorie(req, res) {\n const { text } = req.body;\n\n if (!text)\n return res.status(401).send({\n message: 'Text was not informed',\n });\n\n try {\n let results = [];\n results.push(await req.client.sendText('status@broadcast', text));\n\n if (results.length === 0) return res.status(400).json('Error sending the text of stories');\n returnSucess(res, results);\n } catch (error) {\n returnError(req, res, error);\n }\n}\n\nexport async function sendImageStorie(req, res) {\n const { path, filename = 'image-storie', caption } = req.body;\n\n if (!path && !req.file)\n return res.status(401).send({\n message: 'Sending the image is mandatory',\n });\n\n const pathFile = path || req.file.path;\n\n try {\n let results = [];\n results.push(await req.client.sendImage('status@broadcast', pathFile, filename, caption));\n\n if (results.length === 0) return res.status(400).json('Error sending the image of stories');\n if (req.file) await unlinkAsync(pathFile);\n returnSucess(res, results);\n } catch (error) {\n returnError(req, res, error);\n }\n}\n\nexport async function sendVideoStorie(req, res) {\n const { path, filename = 'video', caption } = req.body;\n\n if (!path && !req.file)\n return res.status(401).send({\n message: 'Sending the Video is mandatory',\n });\n\n const pathFile = path || req.file.path;\n\n try {\n let results = [];\n\n results.push(await req.client.sendFile('status@broadcast', pathFile, filename, caption));\n\n if (results.length === 0) return res.status(400).json('Error sending message');\n if (req.file) await unlinkAsync(pathFile);\n returnSucess(res, results);\n } catch (error) {\n returnError(req, res, error);\n }\n}\n"],"mappings":"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"}
package/dist/index.js CHANGED
@@ -41,8 +41,7 @@ var _index = require("./mapper/index"); /*
41
41
  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
42
42
  * See the License for the specific language governing permissions and
43
43
  * limitations under the License.
44
- */require('dotenv').config();function initServer(serverOptions) {const __dirname = _path.default.resolve(_path.default.dirname(''));if (typeof serverOptions !== 'object') {serverOptions = {};}serverOptions = (0, _mergeDeep.default)({}, _config.default, serverOptions);(0, _functions.setMaxListners)(serverOptions);const logger = (0, _logger.createLogger)(serverOptions.log);const app = (0, _express.default)();
45
- const PORT = process.env.PORT || serverOptions.port;
44
+ */require('dotenv').config();function initServer(serverOptions) {if (typeof serverOptions !== 'object') {serverOptions = {};}serverOptions = (0, _mergeDeep.default)({}, _config.default, serverOptions);(0, _functions.setMaxListners)(serverOptions);const logger = (0, _logger.createLogger)(serverOptions.log);const app = (0, _express.default)();const PORT = process.env.PORT || serverOptions.port;
46
45
 
47
46
  const http = new _http.createServer(app);
48
47
  const io = new _socket.Server(http, {
@@ -53,7 +52,7 @@ var _index = require("./mapper/index"); /*
53
52
  app.use((0, _cors.default)());
54
53
  app.use(_express.default.json({ limit: '50mb' }));
55
54
  app.use(_express.default.urlencoded({ limit: '50mb', extended: true }));
56
- app.use('/files', _express.default.static(_path.default.resolve(__dirname, '..', 'WhatsAppImages')));
55
+ app.use('/files', _express.default.static('WhatsAppImages'));
57
56
  app.use((0, _expressQueryBoolean.default)());
58
57
 
59
58
  // Add request options
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["require","config","initServer","serverOptions","__dirname","path","resolve","dirname","mergeDeep","setMaxListners","logger","createLogger","log","app","express","PORT","process","env","port","http","createServer","io","Socket","cors","origins","use","json","limit","urlencoded","extended","static","boolParser","req","res","next","oldSend","send","data","content","headers","JSON","parse","session","client","mapper","enable","response","convert","prefix","on","sock","info","id","routes","createFolders","listen","host","startAllSession","startAllSessions"],"sources":["../src/index.js"],"sourcesContent":["/*\n * Copyright 2021 WPPConnect Team\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nrequire('dotenv').config();\n\nimport { createLogger } from './util/logger';\nimport { createFolders, setMaxListners, startAllSessions } from './util/functions';\nimport cors from 'cors';\nimport express from 'express';\nimport { createServer } from 'http';\nimport { Server as Socket } from 'socket.io';\nimport routes from './routes';\nimport path from 'path';\nimport config from './config.json';\nimport boolParser from 'express-query-boolean';\nimport mergeDeep from 'merge-deep';\nimport { convert } from './mapper/index';\n\nexport function initServer(serverOptions) {\n const __dirname = path.resolve(path.dirname(''));\n if (typeof serverOptions !== 'object') {\n serverOptions = {};\n }\n\n serverOptions = mergeDeep({}, config, serverOptions);\n\n setMaxListners(serverOptions);\n\n const logger = createLogger(serverOptions.log);\n\n const app = express();\n const PORT = process.env.PORT || serverOptions.port;\n\n const http = new createServer(app);\n const io = new Socket(http, {\n cors: true,\n origins: ['*'],\n });\n\n app.use(cors());\n app.use(express.json({ limit: '50mb' }));\n app.use(express.urlencoded({ limit: '50mb', extended: true }));\n app.use('/files', express.static(path.resolve(__dirname, '..', 'WhatsAppImages')));\n app.use(boolParser());\n\n // Add request options\n app.use((req, res, next) => {\n req.serverOptions = serverOptions;\n req.logger = logger;\n req.io = io;\n\n var oldSend = res.send;\n\n res.send = async function (data) {\n const content = req.headers['content-type'];\n if (content == 'application/json') {\n data = JSON.parse(data);\n if (!data.session) data.session = req.client ? req.client.session : '';\n if (data.mapper && req.serverOptions.mapper.enable) {\n data.response = await convert(req.serverOptions.mapper.prefix, data.response, data.mapper);\n delete data.mapper;\n }\n }\n res.send = oldSend;\n return res.send(data);\n };\n next();\n });\n\n io.on('connection', (sock) => {\n logger.info(`ID: ${sock.id} entrou`);\n\n sock.on('disconnect', () => {\n logger.info(`ID: ${sock.id} saiu`);\n });\n });\n\n app.use(routes);\n\n createFolders();\n\n http.listen(PORT, () => {\n logger.info(`Server is running on port: ${PORT}`);\n logger.info(`\\x1b[31m Visit ${serverOptions.host}:${PORT}/api-docs for Swagger docs`);\n\n if (serverOptions.startAllSession) startAllSessions(serverOptions, logger);\n });\n\n return {\n app,\n routes,\n logger,\n };\n}\n"],"mappings":"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"}
1
+ {"version":3,"file":"index.js","names":["require","config","initServer","serverOptions","mergeDeep","setMaxListners","logger","createLogger","log","app","express","PORT","process","env","port","http","createServer","io","Socket","cors","origins","use","json","limit","urlencoded","extended","static","boolParser","req","res","next","oldSend","send","data","content","headers","JSON","parse","session","client","mapper","enable","response","convert","prefix","on","sock","info","id","routes","createFolders","listen","host","startAllSession","startAllSessions"],"sources":["../src/index.js"],"sourcesContent":["/*\n * Copyright 2021 WPPConnect Team\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nrequire('dotenv').config();\n\nimport { createLogger } from './util/logger';\nimport { createFolders, setMaxListners, startAllSessions } from './util/functions';\nimport cors from 'cors';\nimport express from 'express';\nimport { createServer } from 'http';\nimport { Server as Socket } from 'socket.io';\nimport routes from './routes';\nimport path from 'path';\nimport config from './config.json';\nimport boolParser from 'express-query-boolean';\nimport mergeDeep from 'merge-deep';\nimport { convert } from './mapper/index';\n\nexport function initServer(serverOptions) {\n if (typeof serverOptions !== 'object') {\n serverOptions = {};\n }\n\n serverOptions = mergeDeep({}, config, serverOptions);\n\n setMaxListners(serverOptions);\n\n const logger = createLogger(serverOptions.log);\n\n const app = express();\n const PORT = process.env.PORT || serverOptions.port;\n\n const http = new createServer(app);\n const io = new Socket(http, {\n cors: true,\n origins: ['*'],\n });\n\n app.use(cors());\n app.use(express.json({ limit: '50mb' }));\n app.use(express.urlencoded({ limit: '50mb', extended: true }));\n app.use('/files', express.static('WhatsAppImages'));\n app.use(boolParser());\n\n // Add request options\n app.use((req, res, next) => {\n req.serverOptions = serverOptions;\n req.logger = logger;\n req.io = io;\n\n var oldSend = res.send;\n\n res.send = async function (data) {\n const content = req.headers['content-type'];\n if (content == 'application/json') {\n data = JSON.parse(data);\n if (!data.session) data.session = req.client ? req.client.session : '';\n if (data.mapper && req.serverOptions.mapper.enable) {\n data.response = await convert(req.serverOptions.mapper.prefix, data.response, data.mapper);\n delete data.mapper;\n }\n }\n res.send = oldSend;\n return res.send(data);\n };\n next();\n });\n\n io.on('connection', (sock) => {\n logger.info(`ID: ${sock.id} entrou`);\n\n sock.on('disconnect', () => {\n logger.info(`ID: ${sock.id} saiu`);\n });\n });\n\n app.use(routes);\n\n createFolders();\n\n http.listen(PORT, () => {\n logger.info(`Server is running on port: ${PORT}`);\n logger.info(`\\x1b[31m Visit ${serverOptions.host}:${PORT}/api-docs for Swagger docs`);\n\n if (serverOptions.startAllSession) startAllSessions(serverOptions, logger);\n });\n\n return {\n app,\n routes,\n logger,\n };\n}\n"],"mappings":"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"}
@@ -76,7 +76,7 @@ routes.post('/api/:session/send-link-preview', _auth.default, _statusConnection.
76
76
  routes.post('/api/:session/send-location', _auth.default, _statusConnection.default, MessageController.sendLocation);
77
77
  routes.post('/api/:session/send-mentioned', _auth.default, _statusConnection.default, MessageController.sendMentioned);
78
78
  routes.post('/api/:session/send-buttons', _auth.default, _statusConnection.default, MessageController.sendButtons);
79
- routes.post('/api/:session/send-buttons-list', _auth.default, _statusConnection.default, MessageController.sendButtonsList);
79
+ routes.post('/api/:session/send-list-message', _auth.default, _statusConnection.default, MessageController.sendListMessage);
80
80
 
81
81
  // Group
82
82
  routes.get('/api/:session/all-broadcast-list', _auth.default, _statusConnection.default, GroupController.getAllBroadcastList);
@@ -176,6 +176,7 @@ routes.post('/api/:session/chat-state', _auth.default, _statusConnection.default
176
176
  routes.post('/api/:session/temporary-messages', _auth.default, _statusConnection.default, DeviceController.setTemporaryMessages);
177
177
  routes.post('/api/:session/typing', _auth.default, _statusConnection.default, DeviceController.setTyping);
178
178
  routes.post('/api/:session/star-message', _auth.default, _statusConnection.default, DeviceController.starMessage);
179
+ routes.post('/api/:session/reject-call', _auth.default, _statusConnection.default, DeviceController.rejectCall);
179
180
 
180
181
  // Status
181
182
  routes.post('/api/:session/send-text-storie', _auth.default, _statusConnection.default, MessageController.sendTextStorie);
@@ -219,7 +220,7 @@ routes.get('/api/:session/get-phone-number', _auth.default, _statusConnection.de
219
220
 
220
221
  // Profile
221
222
  routes.post(
222
- '/api/:session/profile-pic',
223
+ '/api/:session/set-profile-pic',
223
224
  upload.single('file'),
224
225
  _auth.default,
225
226
  _statusConnection.default,
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["upload","multer","uploadConfig","routes","Router","post","encryptSession","get","SessionController","showAllSessions","startAllSessions","verifyToken","checkConnectionSession","getMediaByMessage","getSessionState","getQrCode","startSession","statusConnection","logOutSession","closeSession","subscribePresence","downloadMediaByMessage","killServiceWorker","restartService","MessageController","sendMessage","single","sendImage","replyMessage","sendFile","sendFile64","sendVoice","sendVoice64","sendStatusText","sendLinkPreview","sendLocation","sendMentioned","sendButtons","sendButtonsList","GroupController","getAllBroadcastList","getAllGroups","getGroupMembers","getGroupAdmins","getGroupInviteLink","revokeGroupInviteLink","getGroupMembersIds","createGroup","leaveGroup","joinGroupByCode","addParticipant","removeParticipant","promoteParticipant","demoteParticipant","getGroupInfoFromInviteLink","setGroupDescription","setGroupProperty","setGroupSubject","setMessagesAdminsOnly","setGroupProfilePic","changePrivacyGroup","DeviceController","getAllChats","getAllChatsWithMessages","getAllMessagesInChat","getAllNewMessages","getUnreadMessages","getAllUnreadMessages","getChatById","getMessageById","getChatIsOnline","getLastSeen","getListMutes","loadAndGetAllMessagesInChat","getMessages","archiveChat","clearChat","deleteChat","deleteMessage","forwardMessages","markUnseenMessage","pinChat","sendContactVcard","sendMute","sendSeen","setChatState","setTemporaryMessages","setTyping","starMessage","sendTextStorie","sendImageStorie","sendVideoStorie","checkNumberStatus","getAllContacts","getContact","getNumberProfile","getProfilePicFromServer","getStatus","getBlockList","blockContact","unblockContact","getBatteryLevel","getHostDevice","getPhoneNumber","setProfilePic","setProfileStatus","setProfileName","OrderController","getBusinessProfilesProducts","getOrderbyMsg","chatWoot","use","swaggerUi","serve","setup","swaggerDocument","HealthCheck","healthz","unhealthy"],"sources":["../../src/routes/index.js"],"sourcesContent":["/*\n * Copyright 2021 WPPConnect Team\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\nimport { Router } from 'express';\nimport { encryptSession } from '../controller/encryptController';\nimport * as MessageController from '../controller/messageController';\nimport * as GroupController from '../controller/groupController';\nimport * as DeviceController from '../controller/deviceController';\nimport * as SessionController from '../controller/sessionController';\nimport * as OrderController from '../controller/orderController';\nimport * as HealthCheck from '../middleware/healthCheck';\nimport verifyToken from '../middleware/auth';\nimport statusConnection from '../middleware/statusConnection';\nimport multer from 'multer';\nimport uploadConfig from '../config/upload';\nimport swaggerUi from 'swagger-ui-express';\nimport swaggerDocument from '../swagger.json';\n\nconst upload = multer(uploadConfig);\nconst routes = new Router();\n\n// Generate Token\nroutes.post('/api/:session/:secretkey/generate-token', encryptSession);\n\n// All Sessions\nroutes.get('/api/:secretkey/show-all-sessions', SessionController.showAllSessions);\nroutes.post('/api/:secretkey/start-all', SessionController.startAllSessions);\n\n// Sessions\nroutes.get('/api/:session/check-connection-session', verifyToken, SessionController.checkConnectionSession);\nroutes.get('/api/:session/get-media-by-message/:messageId', verifyToken, SessionController.getMediaByMessage);\nroutes.get('/api/:session/status-session', verifyToken, SessionController.getSessionState);\nroutes.get('/api/:session/qrcode-session', verifyToken, SessionController.getQrCode);\nroutes.post('/api/:session/start-session', verifyToken, SessionController.startSession);\nroutes.post('/api/:session/logout-session', verifyToken, statusConnection, SessionController.logOutSession);\nroutes.post('/api/:session/close-session', verifyToken, SessionController.closeSession);\nroutes.post('/api/:session/subscribe-presence', verifyToken, SessionController.subscribePresence);\nroutes.post('/api/:session/download-media', verifyToken, statusConnection, SessionController.downloadMediaByMessage);\nroutes.post('/api/:session/kill-service-workier', verifyToken, statusConnection, SessionController.killServiceWorker);\nroutes.post('/api/:session/restart-service', verifyToken, statusConnection, SessionController.restartService);\n\n// Messages\nroutes.post('/api/:session/send-message', verifyToken, statusConnection, MessageController.sendMessage);\nroutes.post(\n '/api/:session/send-image',\n upload.single('file'),\n verifyToken,\n statusConnection,\n MessageController.sendImage\n);\nroutes.post('/api/:session/send-reply', verifyToken, statusConnection, MessageController.replyMessage);\nroutes.post(\n '/api/:session/send-file',\n upload.single('file'),\n verifyToken,\n statusConnection,\n MessageController.sendFile\n);\nroutes.post('/api/:session/send-file-base64', verifyToken, statusConnection, MessageController.sendFile64);\nroutes.post('/api/:session/send-voice', verifyToken, statusConnection, MessageController.sendVoice);\nroutes.post('/api/:session/send-voice-base64', verifyToken, statusConnection, MessageController.sendVoice64);\nroutes.post('/api/:session/send-status', verifyToken, statusConnection, MessageController.sendStatusText);\nroutes.post('/api/:session/send-link-preview', verifyToken, statusConnection, MessageController.sendLinkPreview);\nroutes.post('/api/:session/send-location', verifyToken, statusConnection, MessageController.sendLocation);\nroutes.post('/api/:session/send-mentioned', verifyToken, statusConnection, MessageController.sendMentioned);\nroutes.post('/api/:session/send-buttons', verifyToken, statusConnection, MessageController.sendButtons);\nroutes.post('/api/:session/send-buttons-list', verifyToken, statusConnection, MessageController.sendButtonsList);\n\n// Group\nroutes.get('/api/:session/all-broadcast-list', verifyToken, statusConnection, GroupController.getAllBroadcastList);\nroutes.get('/api/:session/all-groups', verifyToken, statusConnection, GroupController.getAllGroups);\nroutes.get('/api/:session/group-members/:groupId', verifyToken, statusConnection, GroupController.getGroupMembers);\nroutes.get('/api/:session/group-admins/:groupId', verifyToken, statusConnection, GroupController.getGroupAdmins);\nroutes.get(\n '/api/:session/group-invite-link/:groupId',\n verifyToken,\n statusConnection,\n GroupController.getGroupInviteLink\n);\nroutes.get(\n '/api/:session/group-revoke-link/:groupId',\n verifyToken,\n statusConnection,\n GroupController.revokeGroupInviteLink\n);\nroutes.get(\n '/api/:session/group-members-ids/:groupId',\n verifyToken,\n statusConnection,\n GroupController.getGroupMembersIds\n);\nroutes.post('/api/:session/create-group', verifyToken, statusConnection, GroupController.createGroup);\nroutes.post('/api/:session/leave-group', verifyToken, statusConnection, GroupController.leaveGroup);\nroutes.post('/api/:session/join-code', verifyToken, statusConnection, GroupController.joinGroupByCode);\nroutes.post('/api/:session/add-participant-group', verifyToken, statusConnection, GroupController.addParticipant);\nroutes.post('/api/:session/remove-participant-group', verifyToken, statusConnection, GroupController.removeParticipant);\nroutes.post(\n '/api/:session/promote-participant-group',\n verifyToken,\n statusConnection,\n GroupController.promoteParticipant\n);\nroutes.post('/api/:session/demote-participant-group', verifyToken, statusConnection, GroupController.demoteParticipant);\nroutes.post(\n '/api/:session/group-info-from-invite-link',\n verifyToken,\n statusConnection,\n GroupController.getGroupInfoFromInviteLink\n);\nroutes.post('/api/:session/group-description', verifyToken, statusConnection, GroupController.setGroupDescription);\nroutes.post('/api/:session/group-property', verifyToken, statusConnection, GroupController.setGroupProperty);\nroutes.post('/api/:session/group-subject', verifyToken, statusConnection, GroupController.setGroupSubject);\nroutes.post('/api/:session/messages-admins-only', verifyToken, statusConnection, GroupController.setMessagesAdminsOnly);\nroutes.post(\n '/api/:session/group-pic',\n upload.single('file'),\n verifyToken,\n statusConnection,\n GroupController.setGroupProfilePic\n);\nroutes.post('/api/:session/change-privacy-group', verifyToken, statusConnection, GroupController.changePrivacyGroup);\n\n// Chat\nroutes.get('/api/:session/all-chats', verifyToken, statusConnection, DeviceController.getAllChats);\nroutes.get(\n '/api/:session/all-chats-with-messages',\n verifyToken,\n statusConnection,\n DeviceController.getAllChatsWithMessages\n);\nroutes.get(\n '/api/:session/all-messages-in-chat/:phone',\n verifyToken,\n statusConnection,\n DeviceController.getAllMessagesInChat\n);\nroutes.get('/api/:session/all-new-messages', verifyToken, statusConnection, DeviceController.getAllNewMessages);\nroutes.get('/api/:session/unread-messages', verifyToken, statusConnection, DeviceController.getUnreadMessages);\nroutes.get('/api/:session/all-unread-messages', verifyToken, statusConnection, DeviceController.getAllUnreadMessages);\nroutes.get('/api/:session/chat-by-id/:phone', verifyToken, statusConnection, DeviceController.getChatById);\nroutes.get('/api/:session/message-by-id/:messageId', verifyToken, statusConnection, DeviceController.getMessageById);\nroutes.get('/api/:session/chat-is-online/:phone', verifyToken, statusConnection, DeviceController.getChatIsOnline);\nroutes.get('/api/:session/last-seen/:phone', verifyToken, statusConnection, DeviceController.getLastSeen);\nroutes.get('/api/:session/list-mutes/:type', verifyToken, statusConnection, DeviceController.getListMutes);\nroutes.get(\n '/api/:session/load-messages-in-chat/:phone',\n verifyToken,\n statusConnection,\n DeviceController.loadAndGetAllMessagesInChat\n);\nroutes.get('/api/:session/get-messages/:phone', verifyToken, statusConnection, DeviceController.getMessages);\n\nroutes.post('/api/:session/archive-chat', verifyToken, statusConnection, DeviceController.archiveChat);\nroutes.post('/api/:session/clear-chat', verifyToken, statusConnection, DeviceController.clearChat);\nroutes.post('/api/:session/delete-chat', verifyToken, statusConnection, DeviceController.deleteChat);\nroutes.post('/api/:session/delete-message', verifyToken, statusConnection, DeviceController.deleteMessage);\nroutes.post('/api/:session/forward-messages', verifyToken, statusConnection, DeviceController.forwardMessages);\nroutes.post('/api/:session/mark-unseen', verifyToken, statusConnection, DeviceController.markUnseenMessage);\nroutes.post('/api/:session/pin-chat', verifyToken, statusConnection, DeviceController.pinChat);\nroutes.post('/api/:session/contact-vcard', verifyToken, statusConnection, DeviceController.sendContactVcard);\nroutes.post('/api/:session/send-mute', verifyToken, statusConnection, DeviceController.sendMute);\nroutes.post('/api/:session/send-seen', verifyToken, statusConnection, DeviceController.sendSeen);\nroutes.post('/api/:session/chat-state', verifyToken, statusConnection, DeviceController.setChatState);\nroutes.post('/api/:session/temporary-messages', verifyToken, statusConnection, DeviceController.setTemporaryMessages);\nroutes.post('/api/:session/typing', verifyToken, statusConnection, DeviceController.setTyping);\nroutes.post('/api/:session/star-message', verifyToken, statusConnection, DeviceController.starMessage);\n\n// Status\nroutes.post('/api/:session/send-text-storie', verifyToken, statusConnection, MessageController.sendTextStorie);\nroutes.post(\n '/api/:session/send-image-storie',\n upload.single('file'),\n verifyToken,\n statusConnection,\n MessageController.sendImageStorie\n);\nroutes.post(\n '/api/:session/send-video-storie',\n upload.single('file'),\n verifyToken,\n statusConnection,\n MessageController.sendVideoStorie\n);\n\n// Contact\nroutes.get(\n '/api/:session/check-number-status/:phone',\n verifyToken,\n statusConnection,\n DeviceController.checkNumberStatus\n);\nroutes.get('/api/:session/all-contacts', verifyToken, statusConnection, DeviceController.getAllContacts);\nroutes.get('/api/:session/contact/:phone', verifyToken, statusConnection, DeviceController.getContact);\nroutes.get('/api/:session/profile/:phone', verifyToken, statusConnection, DeviceController.getNumberProfile);\nroutes.get('/api/:session/profile-pic/:phone', verifyToken, statusConnection, DeviceController.getProfilePicFromServer);\nroutes.get('/api/:session/profile-status/:phone', verifyToken, statusConnection, DeviceController.getStatus);\n\n// Blocklist\nroutes.get('/api/:session/blocklist', verifyToken, statusConnection, DeviceController.getBlockList);\nroutes.post('/api/:session/block-contact', verifyToken, statusConnection, DeviceController.blockContact);\nroutes.post('/api/:session/unblock-contact', verifyToken, statusConnection, DeviceController.unblockContact);\n\n// Device\nroutes.get('/api/:session/get-battery-level', verifyToken, statusConnection, DeviceController.getBatteryLevel);\nroutes.get('/api/:session/host-device', verifyToken, statusConnection, DeviceController.getHostDevice);\nroutes.get('/api/:session/get-phone-number', verifyToken, statusConnection, DeviceController.getPhoneNumber);\n\n// Profile\nroutes.post(\n '/api/:session/profile-pic',\n upload.single('file'),\n verifyToken,\n statusConnection,\n DeviceController.setProfilePic\n);\nroutes.post('/api/:session/profile-status', verifyToken, statusConnection, DeviceController.setProfileStatus);\nroutes.post('/api/:session/change-username', verifyToken, statusConnection, DeviceController.setProfileName);\n\n// Business\nroutes.get(\n '/api/:session/get-business-profiles-products',\n verifyToken,\n statusConnection,\n OrderController.getBusinessProfilesProducts\n);\nroutes.get('/api/:session/get-order-by-messageId', verifyToken, statusConnection, OrderController.getOrderbyMsg);\n\nroutes.post('/api/:session/chatwoot', DeviceController.chatWoot);\n\n// Api Doc\nroutes.use('/api-docs', swaggerUi.serve);\nroutes.get('/api-docs', swaggerUi.setup(swaggerDocument));\n\n//k8s\nroutes.get('/healthz', HealthCheck.healthz);\nroutes.get('/unhealthy', HealthCheck.unhealthy);\n\nexport default routes;\n"],"mappings":"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"}
1
+ {"version":3,"file":"index.js","names":["upload","multer","uploadConfig","routes","Router","post","encryptSession","get","SessionController","showAllSessions","startAllSessions","verifyToken","checkConnectionSession","getMediaByMessage","getSessionState","getQrCode","startSession","statusConnection","logOutSession","closeSession","subscribePresence","downloadMediaByMessage","killServiceWorker","restartService","MessageController","sendMessage","single","sendImage","replyMessage","sendFile","sendFile64","sendVoice","sendVoice64","sendStatusText","sendLinkPreview","sendLocation","sendMentioned","sendButtons","sendListMessage","GroupController","getAllBroadcastList","getAllGroups","getGroupMembers","getGroupAdmins","getGroupInviteLink","revokeGroupInviteLink","getGroupMembersIds","createGroup","leaveGroup","joinGroupByCode","addParticipant","removeParticipant","promoteParticipant","demoteParticipant","getGroupInfoFromInviteLink","setGroupDescription","setGroupProperty","setGroupSubject","setMessagesAdminsOnly","setGroupProfilePic","changePrivacyGroup","DeviceController","getAllChats","getAllChatsWithMessages","getAllMessagesInChat","getAllNewMessages","getUnreadMessages","getAllUnreadMessages","getChatById","getMessageById","getChatIsOnline","getLastSeen","getListMutes","loadAndGetAllMessagesInChat","getMessages","archiveChat","clearChat","deleteChat","deleteMessage","forwardMessages","markUnseenMessage","pinChat","sendContactVcard","sendMute","sendSeen","setChatState","setTemporaryMessages","setTyping","starMessage","rejectCall","sendTextStorie","sendImageStorie","sendVideoStorie","checkNumberStatus","getAllContacts","getContact","getNumberProfile","getProfilePicFromServer","getStatus","getBlockList","blockContact","unblockContact","getBatteryLevel","getHostDevice","getPhoneNumber","setProfilePic","setProfileStatus","setProfileName","OrderController","getBusinessProfilesProducts","getOrderbyMsg","chatWoot","use","swaggerUi","serve","setup","swaggerDocument","HealthCheck","healthz","unhealthy"],"sources":["../../src/routes/index.js"],"sourcesContent":["/*\n * Copyright 2021 WPPConnect Team\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\nimport { Router } from 'express';\nimport { encryptSession } from '../controller/encryptController';\nimport * as MessageController from '../controller/messageController';\nimport * as GroupController from '../controller/groupController';\nimport * as DeviceController from '../controller/deviceController';\nimport * as SessionController from '../controller/sessionController';\nimport * as OrderController from '../controller/orderController';\nimport * as HealthCheck from '../middleware/healthCheck';\nimport verifyToken from '../middleware/auth';\nimport statusConnection from '../middleware/statusConnection';\nimport multer from 'multer';\nimport uploadConfig from '../config/upload';\nimport swaggerUi from 'swagger-ui-express';\nimport swaggerDocument from '../swagger.json';\n\nconst upload = multer(uploadConfig);\nconst routes = new Router();\n\n// Generate Token\nroutes.post('/api/:session/:secretkey/generate-token', encryptSession);\n\n// All Sessions\nroutes.get('/api/:secretkey/show-all-sessions', SessionController.showAllSessions);\nroutes.post('/api/:secretkey/start-all', SessionController.startAllSessions);\n\n// Sessions\nroutes.get('/api/:session/check-connection-session', verifyToken, SessionController.checkConnectionSession);\nroutes.get('/api/:session/get-media-by-message/:messageId', verifyToken, SessionController.getMediaByMessage);\nroutes.get('/api/:session/status-session', verifyToken, SessionController.getSessionState);\nroutes.get('/api/:session/qrcode-session', verifyToken, SessionController.getQrCode);\nroutes.post('/api/:session/start-session', verifyToken, SessionController.startSession);\nroutes.post('/api/:session/logout-session', verifyToken, statusConnection, SessionController.logOutSession);\nroutes.post('/api/:session/close-session', verifyToken, SessionController.closeSession);\nroutes.post('/api/:session/subscribe-presence', verifyToken, SessionController.subscribePresence);\nroutes.post('/api/:session/download-media', verifyToken, statusConnection, SessionController.downloadMediaByMessage);\nroutes.post('/api/:session/kill-service-workier', verifyToken, statusConnection, SessionController.killServiceWorker);\nroutes.post('/api/:session/restart-service', verifyToken, statusConnection, SessionController.restartService);\n\n// Messages\nroutes.post('/api/:session/send-message', verifyToken, statusConnection, MessageController.sendMessage);\nroutes.post(\n '/api/:session/send-image',\n upload.single('file'),\n verifyToken,\n statusConnection,\n MessageController.sendImage\n);\nroutes.post('/api/:session/send-reply', verifyToken, statusConnection, MessageController.replyMessage);\nroutes.post(\n '/api/:session/send-file',\n upload.single('file'),\n verifyToken,\n statusConnection,\n MessageController.sendFile\n);\nroutes.post('/api/:session/send-file-base64', verifyToken, statusConnection, MessageController.sendFile64);\nroutes.post('/api/:session/send-voice', verifyToken, statusConnection, MessageController.sendVoice);\nroutes.post('/api/:session/send-voice-base64', verifyToken, statusConnection, MessageController.sendVoice64);\nroutes.post('/api/:session/send-status', verifyToken, statusConnection, MessageController.sendStatusText);\nroutes.post('/api/:session/send-link-preview', verifyToken, statusConnection, MessageController.sendLinkPreview);\nroutes.post('/api/:session/send-location', verifyToken, statusConnection, MessageController.sendLocation);\nroutes.post('/api/:session/send-mentioned', verifyToken, statusConnection, MessageController.sendMentioned);\nroutes.post('/api/:session/send-buttons', verifyToken, statusConnection, MessageController.sendButtons);\nroutes.post('/api/:session/send-list-message', verifyToken, statusConnection, MessageController.sendListMessage);\n\n// Group\nroutes.get('/api/:session/all-broadcast-list', verifyToken, statusConnection, GroupController.getAllBroadcastList);\nroutes.get('/api/:session/all-groups', verifyToken, statusConnection, GroupController.getAllGroups);\nroutes.get('/api/:session/group-members/:groupId', verifyToken, statusConnection, GroupController.getGroupMembers);\nroutes.get('/api/:session/group-admins/:groupId', verifyToken, statusConnection, GroupController.getGroupAdmins);\nroutes.get(\n '/api/:session/group-invite-link/:groupId',\n verifyToken,\n statusConnection,\n GroupController.getGroupInviteLink\n);\nroutes.get(\n '/api/:session/group-revoke-link/:groupId',\n verifyToken,\n statusConnection,\n GroupController.revokeGroupInviteLink\n);\nroutes.get(\n '/api/:session/group-members-ids/:groupId',\n verifyToken,\n statusConnection,\n GroupController.getGroupMembersIds\n);\nroutes.post('/api/:session/create-group', verifyToken, statusConnection, GroupController.createGroup);\nroutes.post('/api/:session/leave-group', verifyToken, statusConnection, GroupController.leaveGroup);\nroutes.post('/api/:session/join-code', verifyToken, statusConnection, GroupController.joinGroupByCode);\nroutes.post('/api/:session/add-participant-group', verifyToken, statusConnection, GroupController.addParticipant);\nroutes.post('/api/:session/remove-participant-group', verifyToken, statusConnection, GroupController.removeParticipant);\nroutes.post(\n '/api/:session/promote-participant-group',\n verifyToken,\n statusConnection,\n GroupController.promoteParticipant\n);\nroutes.post('/api/:session/demote-participant-group', verifyToken, statusConnection, GroupController.demoteParticipant);\nroutes.post(\n '/api/:session/group-info-from-invite-link',\n verifyToken,\n statusConnection,\n GroupController.getGroupInfoFromInviteLink\n);\nroutes.post('/api/:session/group-description', verifyToken, statusConnection, GroupController.setGroupDescription);\nroutes.post('/api/:session/group-property', verifyToken, statusConnection, GroupController.setGroupProperty);\nroutes.post('/api/:session/group-subject', verifyToken, statusConnection, GroupController.setGroupSubject);\nroutes.post('/api/:session/messages-admins-only', verifyToken, statusConnection, GroupController.setMessagesAdminsOnly);\nroutes.post(\n '/api/:session/group-pic',\n upload.single('file'),\n verifyToken,\n statusConnection,\n GroupController.setGroupProfilePic\n);\nroutes.post('/api/:session/change-privacy-group', verifyToken, statusConnection, GroupController.changePrivacyGroup);\n\n// Chat\nroutes.get('/api/:session/all-chats', verifyToken, statusConnection, DeviceController.getAllChats);\nroutes.get(\n '/api/:session/all-chats-with-messages',\n verifyToken,\n statusConnection,\n DeviceController.getAllChatsWithMessages\n);\nroutes.get(\n '/api/:session/all-messages-in-chat/:phone',\n verifyToken,\n statusConnection,\n DeviceController.getAllMessagesInChat\n);\nroutes.get('/api/:session/all-new-messages', verifyToken, statusConnection, DeviceController.getAllNewMessages);\nroutes.get('/api/:session/unread-messages', verifyToken, statusConnection, DeviceController.getUnreadMessages);\nroutes.get('/api/:session/all-unread-messages', verifyToken, statusConnection, DeviceController.getAllUnreadMessages);\nroutes.get('/api/:session/chat-by-id/:phone', verifyToken, statusConnection, DeviceController.getChatById);\nroutes.get('/api/:session/message-by-id/:messageId', verifyToken, statusConnection, DeviceController.getMessageById);\nroutes.get('/api/:session/chat-is-online/:phone', verifyToken, statusConnection, DeviceController.getChatIsOnline);\nroutes.get('/api/:session/last-seen/:phone', verifyToken, statusConnection, DeviceController.getLastSeen);\nroutes.get('/api/:session/list-mutes/:type', verifyToken, statusConnection, DeviceController.getListMutes);\nroutes.get(\n '/api/:session/load-messages-in-chat/:phone',\n verifyToken,\n statusConnection,\n DeviceController.loadAndGetAllMessagesInChat\n);\nroutes.get('/api/:session/get-messages/:phone', verifyToken, statusConnection, DeviceController.getMessages);\n\nroutes.post('/api/:session/archive-chat', verifyToken, statusConnection, DeviceController.archiveChat);\nroutes.post('/api/:session/clear-chat', verifyToken, statusConnection, DeviceController.clearChat);\nroutes.post('/api/:session/delete-chat', verifyToken, statusConnection, DeviceController.deleteChat);\nroutes.post('/api/:session/delete-message', verifyToken, statusConnection, DeviceController.deleteMessage);\nroutes.post('/api/:session/forward-messages', verifyToken, statusConnection, DeviceController.forwardMessages);\nroutes.post('/api/:session/mark-unseen', verifyToken, statusConnection, DeviceController.markUnseenMessage);\nroutes.post('/api/:session/pin-chat', verifyToken, statusConnection, DeviceController.pinChat);\nroutes.post('/api/:session/contact-vcard', verifyToken, statusConnection, DeviceController.sendContactVcard);\nroutes.post('/api/:session/send-mute', verifyToken, statusConnection, DeviceController.sendMute);\nroutes.post('/api/:session/send-seen', verifyToken, statusConnection, DeviceController.sendSeen);\nroutes.post('/api/:session/chat-state', verifyToken, statusConnection, DeviceController.setChatState);\nroutes.post('/api/:session/temporary-messages', verifyToken, statusConnection, DeviceController.setTemporaryMessages);\nroutes.post('/api/:session/typing', verifyToken, statusConnection, DeviceController.setTyping);\nroutes.post('/api/:session/star-message', verifyToken, statusConnection, DeviceController.starMessage);\nroutes.post('/api/:session/reject-call', verifyToken, statusConnection, DeviceController.rejectCall);\n\n// Status\nroutes.post('/api/:session/send-text-storie', verifyToken, statusConnection, MessageController.sendTextStorie);\nroutes.post(\n '/api/:session/send-image-storie',\n upload.single('file'),\n verifyToken,\n statusConnection,\n MessageController.sendImageStorie\n);\nroutes.post(\n '/api/:session/send-video-storie',\n upload.single('file'),\n verifyToken,\n statusConnection,\n MessageController.sendVideoStorie\n);\n\n// Contact\nroutes.get(\n '/api/:session/check-number-status/:phone',\n verifyToken,\n statusConnection,\n DeviceController.checkNumberStatus\n);\nroutes.get('/api/:session/all-contacts', verifyToken, statusConnection, DeviceController.getAllContacts);\nroutes.get('/api/:session/contact/:phone', verifyToken, statusConnection, DeviceController.getContact);\nroutes.get('/api/:session/profile/:phone', verifyToken, statusConnection, DeviceController.getNumberProfile);\nroutes.get('/api/:session/profile-pic/:phone', verifyToken, statusConnection, DeviceController.getProfilePicFromServer);\nroutes.get('/api/:session/profile-status/:phone', verifyToken, statusConnection, DeviceController.getStatus);\n\n// Blocklist\nroutes.get('/api/:session/blocklist', verifyToken, statusConnection, DeviceController.getBlockList);\nroutes.post('/api/:session/block-contact', verifyToken, statusConnection, DeviceController.blockContact);\nroutes.post('/api/:session/unblock-contact', verifyToken, statusConnection, DeviceController.unblockContact);\n\n// Device\nroutes.get('/api/:session/get-battery-level', verifyToken, statusConnection, DeviceController.getBatteryLevel);\nroutes.get('/api/:session/host-device', verifyToken, statusConnection, DeviceController.getHostDevice);\nroutes.get('/api/:session/get-phone-number', verifyToken, statusConnection, DeviceController.getPhoneNumber);\n\n// Profile\nroutes.post(\n '/api/:session/set-profile-pic',\n upload.single('file'),\n verifyToken,\n statusConnection,\n DeviceController.setProfilePic\n);\nroutes.post('/api/:session/profile-status', verifyToken, statusConnection, DeviceController.setProfileStatus);\nroutes.post('/api/:session/change-username', verifyToken, statusConnection, DeviceController.setProfileName);\n\n// Business\nroutes.get(\n '/api/:session/get-business-profiles-products',\n verifyToken,\n statusConnection,\n OrderController.getBusinessProfilesProducts\n);\nroutes.get('/api/:session/get-order-by-messageId', verifyToken, statusConnection, OrderController.getOrderbyMsg);\n\nroutes.post('/api/:session/chatwoot', DeviceController.chatWoot);\n\n// Api Doc\nroutes.use('/api-docs', swaggerUi.serve);\nroutes.get('/api-docs', swaggerUi.setup(swaggerDocument));\n\n//k8s\nroutes.get('/healthz', HealthCheck.healthz);\nroutes.get('/unhealthy', HealthCheck.unhealthy);\n\nexport default routes;\n"],"mappings":"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"}
package/dist/swagger.json CHANGED
@@ -3520,7 +3520,8 @@
3520
3520
  "$ref": "#/components/schemas/ArchiveChatRequest"
3521
3521
  },
3522
3522
  "example": {
3523
- "phone": "556593077171"
3523
+ "phone": "556593077171",
3524
+ "isGroup": false
3524
3525
  }
3525
3526
  }
3526
3527
  },
@@ -3971,7 +3972,8 @@
3971
3972
  "$ref": "#/components/schemas/MarkUnseenRequest"
3972
3973
  },
3973
3974
  "example": {
3974
- "phone": "556593077171"
3975
+ "phone": "556593077171",
3976
+ "isGroup": false
3975
3977
  }
3976
3978
  }
3977
3979
  },
@@ -4723,6 +4725,118 @@
4723
4725
  "deprecated": false
4724
4726
  }
4725
4727
  },
4728
+
4729
+ "/reject-call": {
4730
+ "post": {
4731
+ "tags": ["Chat"],
4732
+ "summary": "Reject call",
4733
+ "description": "Reject a call by callId",
4734
+ "operationId": "rejectCall",
4735
+ "parameters": [],
4736
+ "requestBody": {
4737
+ "description": "When receive a call, you can reject call by callId",
4738
+ "content": {
4739
+ "application/json": {
4740
+ "schema": {
4741
+ "$ref": "#/components/schemas/rejectCallRequest"
4742
+ },
4743
+ "example": {
4744
+ "callId": "898989047464654645678787EAS56"
4745
+ }
4746
+ }
4747
+ },
4748
+ "required": true
4749
+ },
4750
+ "responses": {
4751
+ "200": {
4752
+ "description": "OK",
4753
+ "headers": {
4754
+ "X-Powered-By": {
4755
+ "content": {
4756
+ "text/plain": {
4757
+ "schema": {
4758
+ "type": "string"
4759
+ },
4760
+ "example": "Express"
4761
+ }
4762
+ }
4763
+ },
4764
+ "Access-Control-Allow-Origin": {
4765
+ "content": {
4766
+ "text/plain": {
4767
+ "schema": {
4768
+ "type": "string"
4769
+ },
4770
+ "example": "*"
4771
+ }
4772
+ }
4773
+ },
4774
+ "Content-Length": {
4775
+ "content": {
4776
+ "text/plain": {
4777
+ "schema": {
4778
+ "type": "string"
4779
+ },
4780
+ "example": "36"
4781
+ }
4782
+ }
4783
+ },
4784
+ "ETag": {
4785
+ "content": {
4786
+ "text/plain": {
4787
+ "schema": {
4788
+ "type": "string"
4789
+ },
4790
+ "example": "W/\"24-Xm9Fmv/piJ8aftrp5VK0tqiuuAc\""
4791
+ }
4792
+ }
4793
+ },
4794
+ "Date": {
4795
+ "content": {
4796
+ "text/plain": {
4797
+ "schema": {
4798
+ "type": "string"
4799
+ },
4800
+ "example": "Fri, 14 May 2021 13:37:24 GMT"
4801
+ }
4802
+ }
4803
+ },
4804
+ "Connection": {
4805
+ "content": {
4806
+ "text/plain": {
4807
+ "schema": {
4808
+ "type": "string"
4809
+ },
4810
+ "example": "keep-alive"
4811
+ }
4812
+ }
4813
+ },
4814
+ "Keep-Alive": {
4815
+ "content": {
4816
+ "text/plain": {
4817
+ "schema": {
4818
+ "type": "string"
4819
+ },
4820
+ "example": "timeout=5"
4821
+ }
4822
+ }
4823
+ }
4824
+ },
4825
+ "content": {
4826
+ "application/json; charset=utf-8": {
4827
+ "schema": {
4828
+ "$ref": "#/components/schemas/rejectCallRequest"
4829
+ },
4830
+ "example": {
4831
+ "status": "success"
4832
+ }
4833
+ }
4834
+ }
4835
+ }
4836
+ },
4837
+ "deprecated": false
4838
+ }
4839
+ },
4726
4840
  "/send-file-base64": {
4727
4841
  "post": {
4728
4842
  "tags": ["Send Message"],
@@ -4893,9 +5007,7 @@
4893
5007
  },
4894
5008
  "/send-buttons": {
4895
5009
  "post": {
4896
- "tags": [
4897
- "Send Message"
4898
- ],
5010
+ "tags": ["Send Message"],
4899
5011
  "summary": "Send Message Button",
4900
5012
  "description": "Envia uma mensagem de botões para um número de telefone. ",
4901
5013
  "operationId": "SendMessageWithButton",
@@ -4925,7 +5037,40 @@
4925
5037
  },
4926
5038
  "deprecated": false
4927
5039
  }
4928
- },
5040
+ },
5041
+ "/send-list-message": {
5042
+ "post": {
5043
+ "tags": ["Send Message"],
5044
+ "summary": "Send Message Button with sections",
5045
+ "description": "Envia uma mensagem de botões para um número de telefone ou grupo, com seções. ",
5046
+ "operationId": "SendMessageWithButtonSections",
5047
+ "parameters": [],
5048
+ "requestBody": {
5049
+ "description": "",
5050
+ "content": {
5051
+ "application/json": {
5052
+ "schema": {
5053
+ "$ref": "#/components/schemas/SendMessageRequestWithButtonSections"
5054
+ }
5055
+ }
5056
+ },
5057
+ "required": true
5058
+ },
5059
+ "responses": {
5060
+ "201": {
5061
+ "description": "Created",
5062
+ "headers": {},
5063
+ "content": {}
5064
+ },
5065
+ "400": {
5066
+ "description": "Bad Request",
5067
+ "headers": {},
5068
+ "content": {}
5069
+ }
5070
+ },
5071
+ "deprecated": false
5072
+ }
5073
+ },
4929
5074
  "/forwardMessages": {
4930
5075
  "post": {
4931
5076
  "tags": ["Send Message"],
@@ -5520,22 +5665,28 @@
5520
5665
  "deprecated": false
5521
5666
  }
5522
5667
  },
5523
- "/change-profile-image": {
5668
+ "/set-profile-pic": {
5524
5669
  "post": {
5525
5670
  "tags": ["Profile"],
5526
5671
  "summary": "Change Profile Image",
5527
- "description": "Altera o nome de usuário do perfil do WhatsApp.",
5672
+ "description": "Altera a foto do usuário do perfil do WhatsApp.",
5528
5673
  "operationId": "ChangeProfileImage",
5529
5674
  "parameters": [],
5530
5675
  "requestBody": {
5531
5676
  "description": "",
5532
5677
  "content": {
5533
- "application/json": {
5678
+ "multipart/form-data": {
5534
5679
  "schema": {
5535
- "$ref": "#/components/schemas/ChangeProfileImageRequest"
5680
+ "type": "object",
5681
+ "properties": {
5682
+ "file": {
5683
+ "type": "string",
5684
+ "format": "base64"
5685
+ }
5686
+ }
5536
5687
  },
5537
5688
  "example": {
5538
- "path": "veniam in"
5689
+ "file": "Send a file format with FormData"
5539
5690
  }
5540
5691
  }
5541
5692
  },
@@ -5622,8 +5773,10 @@
5622
5773
  "$ref": "#/components/schemas/ChangeProfileImage"
5623
5774
  },
5624
5775
  "example": {
5625
- "status": "Success",
5626
- "message": "Foto de perfil alterada com sucesso"
5776
+ "status": "success",
5777
+ "response": {
5778
+ "message": "Profile photo successfully changed"
5779
+ }
5627
5780
  }
5628
5781
  }
5629
5782
  }
@@ -6507,8 +6660,8 @@
6507
6660
  "$ref": "#/components/schemas/CreateGroupRequest"
6508
6661
  },
6509
6662
  "example": {
6510
- "groupname": "This is My Group",
6511
- "phone": "5511912345678"
6663
+ "name": "This is My Group",
6664
+ "participants": "5521999898825,5521985783689"
6512
6665
  }
6513
6666
  }
6514
6667
  },
@@ -14641,10 +14794,14 @@
14641
14794
  "properties": {
14642
14795
  "phone": {
14643
14796
  "type": "string"
14797
+ },
14798
+ "isGroup": {
14799
+ "type": "boolean"
14644
14800
  }
14645
14801
  },
14646
14802
  "example": {
14647
- "phone": "556593077171"
14803
+ "phone": "556593077171",
14804
+ "isGroup": "false"
14648
14805
  }
14649
14806
  },
14650
14807
  "MarkUnseen": {
@@ -15231,6 +15388,19 @@
15231
15388
  "isGrup": false
15232
15389
  }
15233
15390
  },
15391
+ "rejectCallRequest": {
15392
+ "title": "rejectCallRequest",
15393
+ "required": ["callId"],
15394
+ "type": "object",
15395
+ "properties": {
15396
+ "callId": {
15397
+ "type": "string"
15398
+ }
15399
+ },
15400
+ "example": {
15401
+ "callId": "89898ADSd5456SD5656DSADSAD322"
15402
+ }
15403
+ },
15234
15404
  "SendFileRequest": {
15235
15405
  "title": "SendFileRequest",
15236
15406
  "required": ["phone", "base64", "isGroup"],
@@ -15324,11 +15494,7 @@
15324
15494
  },
15325
15495
  "SendMessageRequestWithButton": {
15326
15496
  "title": "SendMessageRequestWithButton",
15327
- "required": [
15328
- "phone",
15329
- "message",
15330
- "options"
15331
- ],
15497
+ "required": ["phone", "message", "options"],
15332
15498
  "type": "object",
15333
15499
  "properties": {
15334
15500
  "phone": {
@@ -15374,7 +15540,45 @@
15374
15540
  "footer": "Footer text"
15375
15541
  }
15376
15542
  }
15377
- },
15543
+ },
15544
+ "SendMessageRequestWithButtonSections": {
15545
+ "title": "SendMessageRequestWithButtonSections",
15546
+ "required": ["phone", "sections"],
15547
+ "type": "object",
15548
+ "properties": {
15549
+ "phone": {
15550
+ "type": "string"
15551
+ },
15552
+ "options": {
15553
+ "type": "any"
15554
+ }
15555
+ },
15556
+ "example": {
15557
+ "isGroup": "false",
15558
+ "phone": "554498005216",
15559
+ "buttonText": "CLIQUE AQUI",
15560
+ "description": "Hello World",
15561
+ "sections": {
15562
+ "sections": [
15563
+ {
15564
+ "title": "Section 1",
15565
+ "rows": [
15566
+ {
15567
+ "rowId": "my_custom_id",
15568
+ "title": "Test 1",
15569
+ "description": "Description 1"
15570
+ },
15571
+ {
15572
+ "rowId": "2",
15573
+ "title": "Test 2",
15574
+ "description": "Description 2"
15575
+ }
15576
+ ]
15577
+ }
15578
+ ]
15579
+ }
15580
+ }
15581
+ },
15378
15582
  "ForwardMessages(Encaminharmensagem)Request": {
15379
15583
  "title": "ForwardMessages(Encaminharmensagem)Request",
15380
15584
  "required": ["phone", "messageId"],
@@ -15694,15 +15898,15 @@
15694
15898
  },
15695
15899
  "ChangeProfileImageRequest": {
15696
15900
  "title": "ChangeProfileImageRequest",
15697
- "required": ["path"],
15698
- "type": "object",
15901
+ "required": ["file"],
15902
+ "type": "file",
15699
15903
  "properties": {
15700
- "path": {
15701
- "type": "string"
15904
+ "file": {
15905
+ "type": "file"
15702
15906
  }
15703
15907
  },
15704
15908
  "example": {
15705
- "path": "veniam in"
15909
+ "file": "file"
15706
15910
  }
15707
15911
  },
15708
15912
  "ChangeProfileImage": {
@@ -169,18 +169,21 @@ var _chatWootClient = _interopRequireDefault(require("./chatWootClient")); /*
169
169
  });
170
170
 
171
171
  await client.onIncomingCall(async (call) => {
172
+ req.io.emit('incomingcall', call);
172
173
  (0, _functions.callWebHook)(client, req, 'incomingcall', call);
173
174
  });
174
175
  }
175
176
 
176
177
  async listenAcks(client, req) {
177
178
  await client.onAck(async (ack) => {
179
+ req.io.emit('onack', ack);
178
180
  (0, _functions.callWebHook)(client, req, 'onack', ack);
179
181
  });
180
182
  }
181
183
 
182
184
  async onPresenceChanged(client, req) {
183
185
  await client.onPresenceChanged(async (presenceChangedEvent) => {
186
+ req.io.emit('onpresencechanged', presenceChangedEvent);
184
187
  (0, _functions.callWebHook)(client, req, 'onpresencechanged', presenceChangedEvent);
185
188
  });
186
189
  }
@@ -1 +1 @@
1
- {"version":3,"file":"createSessionUtil.js","names":["CreateSessionUtil","startChatWootClient","client","config","chatWoot","_chatWootClient","chatWootClient","session","createSessionUtil","req","clientsArray","res","getClient","status","body","tokenStore","Factory","myTokenStore","createTokenStory","getToken","serverOptions","customUserDataDir","createOptions","puppeteerOptions","userDataDir","wppClient","create","Object","assign","deviceName","catchQR","base64Qr","asciiQR","attempt","urlCode","exportQR","statusFind","eventEmitter","emit","qrcode","close","undefined","callWebHook","logger","info","error","start","webhook","onParticipantsChanged","e","opendata","qrCode","urlcode","replace","imageBuffer","Buffer","from","io","data","toString","_headerSent","json","isConnected","message","startHelper","checkStateSession","listenMessages","listenAcks","onPresenceChanged","onStateChange","state","conflits","SocketState","CONFLICT","includes","useHere","onMessage","type","onLiveLocation","sender","id","location","onAnyMessage","download","response","onIncomingCall","call","onAck","ack","presenceChangedEvent","encodeFunction","JSON","stringify","decodeFunction","text","object","parse"],"sources":["../../src/util/createSessionUtil.js"],"sourcesContent":["/*\n * Copyright 2021 WPPConnect Team\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\nimport { clientsArray, eventEmitter } from './sessionUtil';\nimport { create, SocketState } from '@wppconnect-team/wppconnect';\nimport { callWebHook, startHelper } from './functions';\nimport { download } from '../controller/sessionController';\nimport Factory from './tokenStore/factory';\nimport chatWootClient from './chatWootClient';\n\nexport default class CreateSessionUtil {\n startChatWootClient(client) {\n if (client.config.chatWoot && !client._chatWootClient)\n client._chatWootClient = new chatWootClient(client.config.chatWoot, client.session);\n return client._chatWootClient;\n }\n\n async createSessionUtil(req, clientsArray, session, res) {\n try {\n let client = this.getClient(session);\n if (client.status != null && client.status !== 'CLOSED') return;\n client.status = 'INITIALIZING';\n client.config = req.body;\n\n const tokenStore = new Factory();\n const myTokenStore = tokenStore.createTokenStory(client);\n\n await myTokenStore.getToken(session);\n this.startChatWootClient(client);\n\n if (req.serverOptions.customUserDataDir) {\n req.serverOptions.createOptions.puppeteerOptions = {\n userDataDir: req.serverOptions.customUserDataDir + session,\n };\n }\n\n let wppClient = await create(\n Object.assign({}, { tokenStore: myTokenStore }, req.serverOptions.createOptions, {\n session: session,\n deviceName: req.serverOptions.deviceName,\n catchQR: (base64Qr, asciiQR, attempt, urlCode) => {\n this.exportQR(req, base64Qr, urlCode, client, res);\n },\n statusFind: (statusFind) => {\n try {\n eventEmitter.emit(`status-${client.session}`, client, statusFind);\n if (statusFind === 'autocloseCalled' || statusFind === 'desconnectedMobile') {\n client.status = 'CLOSED';\n client.qrcode = null;\n client.close();\n clientsArray[session] = undefined;\n }\n callWebHook(client, req, 'status-find', { status: statusFind });\n req.logger.info(statusFind + '\\n\\n');\n } catch (error) {}\n },\n })\n );\n\n client = clientsArray[session] = Object.assign(wppClient, client);\n await this.start(req, client);\n\n if (req.serverOptions.webhook.onParticipantsChanged) {\n await this.onParticipantsChanged(req, client);\n }\n } catch (e) {\n req.logger.error(e);\n }\n }\n\n async opendata(req, session, res) {\n await this.createSessionUtil(req, clientsArray, session, res);\n }\n\n exportQR(req, qrCode, urlCode, client, res) {\n eventEmitter.emit(`qrcode-${client.session}`, qrCode, urlCode, client);\n Object.assign(client, {\n status: 'QRCODE',\n qrcode: qrCode,\n urlcode: urlCode,\n });\n\n qrCode = qrCode.replace('data:image/png;base64,', '');\n const imageBuffer = Buffer.from(qrCode, 'base64');\n\n req.io.emit('qrCode', {\n data: 'data:image/png;base64,' + imageBuffer.toString('base64'),\n session: client.session,\n });\n\n callWebHook(client, req, 'qrcode', { qrcode: qrCode, urlcode: urlCode });\n if (res && !res._headerSent) res.status(200).json({ status: 'qrcode', qrcode: qrCode, urlcode: urlCode });\n }\n\n async onParticipantsChanged(req, client) {\n await client.isConnected();\n await client.onParticipantsChanged((message) => {\n callWebHook(client, req, 'onparticipantschanged', message);\n });\n }\n\n async start(req, client) {\n try {\n await client.isConnected();\n Object.assign(client, { status: 'CONNECTED', qrcode: null });\n\n req.logger.info(`Started Session: ${client.session}`);\n //callWebHook(client, req, 'session-logged', { status: 'CONNECTED'});\n req.io.emit('session-logged', { status: true, session: client.session });\n startHelper(client, req);\n } catch (error) {\n req.logger.error(error);\n req.io.emit('session-error', client.session);\n }\n\n await this.checkStateSession(client, req);\n await this.listenMessages(client, req);\n\n if (req.serverOptions.webhook.listenAcks) {\n await this.listenAcks(client, req);\n }\n\n if (req.serverOptions.webhook.onPresenceChanged) {\n await this.onPresenceChanged(client, req);\n }\n }\n\n async checkStateSession(client, req) {\n await client.onStateChange((state) => {\n req.logger.info(`State Change ${state}: ${client.session}`);\n const conflits = [SocketState.CONFLICT];\n\n if (conflits.includes(state)) {\n client.useHere();\n }\n });\n }\n\n async listenMessages(client, req) {\n await client.onMessage(async (message) => {\n eventEmitter.emit(`mensagem-${client.session}`, client, message);\n callWebHook(client, req, 'onmessage', message);\n if (message.type === 'location')\n client.onLiveLocation(message.sender.id, (location) => {\n callWebHook(client, req, 'location', location);\n });\n });\n\n await client.onAnyMessage((message) => {\n message.session = client.session;\n\n if (message.type === 'sticker') {\n download(message, client, req.logger);\n }\n\n req.io.emit('received-message', { response: message });\n });\n\n await client.onIncomingCall(async (call) => {\n callWebHook(client, req, 'incomingcall', call);\n });\n }\n\n async listenAcks(client, req) {\n await client.onAck(async (ack) => {\n callWebHook(client, req, 'onack', ack);\n });\n }\n\n async onPresenceChanged(client, req) {\n await client.onPresenceChanged(async (presenceChangedEvent) => {\n callWebHook(client, req, 'onpresencechanged', presenceChangedEvent);\n });\n }\n\n encodeFunction(data, webhook) {\n data.webhook = webhook;\n return JSON.stringify(data);\n }\n\n decodeFunction(text, client) {\n let object = JSON.parse(text);\n if (object.webhook && !client.webhook) client.webhook = object.webhook;\n delete object.webhook;\n return object;\n }\n\n getClient(session) {\n let client = clientsArray[session];\n\n if (!client) client = clientsArray[session] = { status: null, session: session };\n return client;\n }\n}\n"],"mappings":"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"}
1
+ {"version":3,"file":"createSessionUtil.js","names":["CreateSessionUtil","startChatWootClient","client","config","chatWoot","_chatWootClient","chatWootClient","session","createSessionUtil","req","clientsArray","res","getClient","status","body","tokenStore","Factory","myTokenStore","createTokenStory","getToken","serverOptions","customUserDataDir","createOptions","puppeteerOptions","userDataDir","wppClient","create","Object","assign","deviceName","catchQR","base64Qr","asciiQR","attempt","urlCode","exportQR","statusFind","eventEmitter","emit","qrcode","close","undefined","callWebHook","logger","info","error","start","webhook","onParticipantsChanged","e","opendata","qrCode","urlcode","replace","imageBuffer","Buffer","from","io","data","toString","_headerSent","json","isConnected","message","startHelper","checkStateSession","listenMessages","listenAcks","onPresenceChanged","onStateChange","state","conflits","SocketState","CONFLICT","includes","useHere","onMessage","type","onLiveLocation","sender","id","location","onAnyMessage","download","response","onIncomingCall","call","onAck","ack","presenceChangedEvent","encodeFunction","JSON","stringify","decodeFunction","text","object","parse"],"sources":["../../src/util/createSessionUtil.js"],"sourcesContent":["/*\n * Copyright 2021 WPPConnect Team\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\nimport { clientsArray, eventEmitter } from './sessionUtil';\nimport { create, SocketState } from '@wppconnect-team/wppconnect';\nimport { callWebHook, startHelper } from './functions';\nimport { download } from '../controller/sessionController';\nimport Factory from './tokenStore/factory';\nimport chatWootClient from './chatWootClient';\n\nexport default class CreateSessionUtil {\n startChatWootClient(client) {\n if (client.config.chatWoot && !client._chatWootClient)\n client._chatWootClient = new chatWootClient(client.config.chatWoot, client.session);\n return client._chatWootClient;\n }\n\n async createSessionUtil(req, clientsArray, session, res) {\n try {\n let client = this.getClient(session);\n if (client.status != null && client.status !== 'CLOSED') return;\n client.status = 'INITIALIZING';\n client.config = req.body;\n\n const tokenStore = new Factory();\n const myTokenStore = tokenStore.createTokenStory(client);\n\n await myTokenStore.getToken(session);\n this.startChatWootClient(client);\n\n if (req.serverOptions.customUserDataDir) {\n req.serverOptions.createOptions.puppeteerOptions = {\n userDataDir: req.serverOptions.customUserDataDir + session,\n };\n }\n\n let wppClient = await create(\n Object.assign({}, { tokenStore: myTokenStore }, req.serverOptions.createOptions, {\n session: session,\n deviceName: req.serverOptions.deviceName,\n catchQR: (base64Qr, asciiQR, attempt, urlCode) => {\n this.exportQR(req, base64Qr, urlCode, client, res);\n },\n statusFind: (statusFind) => {\n try {\n eventEmitter.emit(`status-${client.session}`, client, statusFind);\n if (statusFind === 'autocloseCalled' || statusFind === 'desconnectedMobile') {\n client.status = 'CLOSED';\n client.qrcode = null;\n client.close();\n clientsArray[session] = undefined;\n }\n callWebHook(client, req, 'status-find', { status: statusFind });\n req.logger.info(statusFind + '\\n\\n');\n } catch (error) {}\n },\n })\n );\n\n client = clientsArray[session] = Object.assign(wppClient, client);\n await this.start(req, client);\n\n if (req.serverOptions.webhook.onParticipantsChanged) {\n await this.onParticipantsChanged(req, client);\n }\n } catch (e) {\n req.logger.error(e);\n }\n }\n\n async opendata(req, session, res) {\n await this.createSessionUtil(req, clientsArray, session, res);\n }\n\n exportQR(req, qrCode, urlCode, client, res) {\n eventEmitter.emit(`qrcode-${client.session}`, qrCode, urlCode, client);\n Object.assign(client, {\n status: 'QRCODE',\n qrcode: qrCode,\n urlcode: urlCode,\n });\n\n qrCode = qrCode.replace('data:image/png;base64,', '');\n const imageBuffer = Buffer.from(qrCode, 'base64');\n\n req.io.emit('qrCode', {\n data: 'data:image/png;base64,' + imageBuffer.toString('base64'),\n session: client.session,\n });\n\n callWebHook(client, req, 'qrcode', { qrcode: qrCode, urlcode: urlCode });\n if (res && !res._headerSent) res.status(200).json({ status: 'qrcode', qrcode: qrCode, urlcode: urlCode });\n }\n\n async onParticipantsChanged(req, client) {\n await client.isConnected();\n await client.onParticipantsChanged((message) => {\n callWebHook(client, req, 'onparticipantschanged', message);\n });\n }\n\n async start(req, client) {\n try {\n await client.isConnected();\n Object.assign(client, { status: 'CONNECTED', qrcode: null });\n\n req.logger.info(`Started Session: ${client.session}`);\n //callWebHook(client, req, 'session-logged', { status: 'CONNECTED'});\n req.io.emit('session-logged', { status: true, session: client.session });\n startHelper(client, req);\n } catch (error) {\n req.logger.error(error);\n req.io.emit('session-error', client.session);\n }\n\n await this.checkStateSession(client, req);\n await this.listenMessages(client, req);\n\n if (req.serverOptions.webhook.listenAcks) {\n await this.listenAcks(client, req);\n }\n\n if (req.serverOptions.webhook.onPresenceChanged) {\n await this.onPresenceChanged(client, req);\n }\n }\n\n async checkStateSession(client, req) {\n await client.onStateChange((state) => {\n req.logger.info(`State Change ${state}: ${client.session}`);\n const conflits = [SocketState.CONFLICT];\n\n if (conflits.includes(state)) {\n client.useHere();\n }\n });\n }\n\n async listenMessages(client, req) {\n await client.onMessage(async (message) => {\n eventEmitter.emit(`mensagem-${client.session}`, client, message);\n callWebHook(client, req, 'onmessage', message);\n if (message.type === 'location')\n client.onLiveLocation(message.sender.id, (location) => {\n callWebHook(client, req, 'location', location);\n });\n });\n\n await client.onAnyMessage((message) => {\n message.session = client.session;\n\n if (message.type === 'sticker') {\n download(message, client, req.logger);\n }\n\n req.io.emit('received-message', { response: message });\n });\n\n await client.onIncomingCall(async (call) => {\n req.io.emit('incomingcall', call);\n callWebHook(client, req, 'incomingcall', call);\n });\n }\n\n async listenAcks(client, req) {\n await client.onAck(async (ack) => {\n req.io.emit('onack', ack);\n callWebHook(client, req, 'onack', ack);\n });\n }\n\n async onPresenceChanged(client, req) {\n await client.onPresenceChanged(async (presenceChangedEvent) => {\n req.io.emit('onpresencechanged', presenceChangedEvent);\n callWebHook(client, req, 'onpresencechanged', presenceChangedEvent);\n });\n }\n\n encodeFunction(data, webhook) {\n data.webhook = webhook;\n return JSON.stringify(data);\n }\n\n decodeFunction(text, client) {\n let object = JSON.parse(text);\n if (object.webhook && !client.webhook) client.webhook = object.webhook;\n delete object.webhook;\n return object;\n }\n\n getClient(session) {\n let client = clientsArray[session];\n\n if (!client) client = clientsArray[session] = { status: null, session: session };\n return client;\n }\n}\n"],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@wppconnect/server",
3
- "version": "1.3.4",
3
+ "version": "1.4.0",
4
4
  "description": "Projeto feito para autenticar a automomacao do WhatsappWeb com multi-clientes de forma dinamica. Backend feito em Nodejs(express, socketio), FrontEnd (ReactJS)",
5
5
  "main": "dist/index.js",
6
6
  "author": "kingaspx",
@@ -56,29 +56,29 @@
56
56
  "@commitlint/cli": "^17.0.2",
57
57
  "@commitlint/config-conventional": "^17.0.2",
58
58
  "@commitlint/cz-commitlint": "^17.0.0",
59
- "aws-sdk": "^2.1157.0",
59
+ "aws-sdk": "^2.1162.0",
60
60
  "commitizen": "^4.2.4",
61
61
  "conventional-changelog-cli": "^2.2.2",
62
62
  "crypto-js": "^4.1.1",
63
- "eslint": "^8.17.0",
63
+ "eslint": "^8.18.0",
64
64
  "eslint-config-prettier": "^8.5.0",
65
65
  "eslint-plugin-prettier": "^4.0.0",
66
66
  "husky": "^8.0.1",
67
67
  "license-check-and-add": "^4.0.5",
68
- "mongoose": "^6.3.8",
69
- "nodemon": "^2.0.16",
70
- "prettier": "^2.6.2",
68
+ "mongoose": "^6.4.1",
69
+ "nodemon": "^2.0.18",
70
+ "prettier": "^2.7.1",
71
71
  "pretty-quick": "^3.1.3",
72
72
  "redis": "^4.1.0",
73
- "release-it": "^15.0.0",
73
+ "release-it": "^15.1.0",
74
74
  "rimraf": "^3.0.2",
75
75
  "shx": "^0.3.4",
76
76
  "swagger-ui-dist": "^4.12.0"
77
77
  },
78
78
  "peerDependencies": {
79
- "aws-sdk": "^2.1157.0",
79
+ "aws-sdk": "^2.1162.0",
80
80
  "crypto-js": "^4.1.1",
81
- "mongoose": "^6.3.8",
81
+ "mongoose": "^6.4.1",
82
82
  "redis": "^4.1.0"
83
83
  }
84
84
  }