@wppconnect/server 1.5.0 → 1.6.2
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 +22 -0
- package/README.md +15 -1
- package/dist/config.json +2 -1
- package/dist/controller/deviceController.js +49 -6
- package/dist/controller/deviceController.js.map +1 -1
- package/dist/controller/groupController.js +8 -6
- package/dist/controller/groupController.js.map +1 -1
- package/dist/controller/labelsController.js +58 -0
- package/dist/controller/labelsController.js.map +1 -0
- package/dist/controller/messageController.js +14 -32
- package/dist/controller/messageController.js.map +1 -1
- package/dist/controller/sessionController.js +15 -9
- package/dist/controller/sessionController.js.map +1 -1
- package/dist/controller/statusController.js +74 -0
- package/dist/controller/statusController.js.map +1 -0
- package/dist/index.js +3 -2
- package/dist/index.js.map +1 -1
- package/dist/routes/index.js +29 -3
- package/dist/routes/index.js.map +1 -1
- package/dist/swagger.json +3309 -1135
- package/dist/util/createSessionUtil.js +15 -0
- package/dist/util/createSessionUtil.js.map +1 -1
- package/package.json +20 -18
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"groupController.js","names":["getAllGroups","req","res","response","client","status","json","e","logger","error","message","joinGroupByCode","inviteCode","body","send","joinGroup","contact","createGroup","participants","name","infoGroup","group","groupNameToArray","contactToArray","push","id","gid","user","map","Object","keys","groupInfo","leaveGroup","groupId","groupToArray","messages","getGroupMembers","params","addParticipant","phone","arrayGroups","groups","removeParticipant","promoteParticipant","demoteParticipant","getGroupAdmins","getGroupInviteLink","revokeGroupInviteLink","getAllBroadcastList","getGroupInfoFromInviteLink","invitecode","getGroupMembersIds","setGroupDescription","description","setGroupProperty","property","value","setGroupSubject","title","setMessagesAdminsOnly","changePrivacyGroup","setGroupProfilePic","file","path","pathFile","contato","setProfilePic","unlinkAsync"],"sources":["../../src/controller/groupController.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 { contactToArray, groupNameToArray, groupToArray, unlinkAsync } from '../util/functions';\n\nexport async function getAllGroups(req, res) {\n try {\n const response = await req.client.getAllGroups();\n\n return res.status(200).json({ status: 'success', response: response });\n } catch (e) {\n req.logger.error(e);\n res.status(500).json({ status: 'error', message: 'Error fetching groups' });\n }\n}\n\nexport async function joinGroupByCode(req, res) {\n const { inviteCode } = req.body;\n\n if (!inviteCode) return res.status(400).send({ message: 'Invitation Code is required' });\n\n try {\n await req.client.joinGroup(inviteCode);\n res.status(201).json({\n status: 'success',\n response: { message: 'The informed contact(s) entered the group successfully', contact: inviteCode },\n });\n } catch (error) {\n req.logger.error(error);\n res.status(500).json({ status: 'error', message: 'The informed contact(s) did not join the group successfully' });\n }\n}\n\nexport async function createGroup(req, res) {\n const { participants, name } = req.body;\n\n try {\n let response = {};\n let infoGroup = [];\n\n for (const group of groupNameToArray(name)) {\n response = await req.client.createGroup(group, contactToArray(participants));\n\n infoGroup.push({\n name: group,\n id: response.gid.user,\n participants: response.participants.map((user) => {\n return { user: Object.keys(user)[0] };\n }),\n });\n }\n\n return res.status(201).json({\n status: 'success',\n response: { message: 'Group(s) created successfully', group: name, groupInfo: infoGroup },\n });\n } catch (e) {\n req.logger.error(e);\n return res.status(500).json({ status: 'error', message: 'Error creating group(s)' });\n }\n}\n\nexport async function leaveGroup(req, res) {\n const { groupId } = req.body;\n\n try {\n for (const group of groupToArray(groupId)) {\n await req.client.leaveGroup(group);\n }\n\n return res.status(200).json({\n status: 'success',\n response: { messages: 'Você saiu do grupo com sucesso', group: groupId },\n });\n } catch (e) {\n req.logger.error(e);\n return res.status(500).json({ status: 'error', message: 'Erro ao sair do(s) grupo(s)' });\n }\n}\n\nexport async function getGroupMembers(req, res) {\n const { groupId } = req.params;\n\n try {\n let response = {};\n for (const group of groupToArray(groupId)) {\n response = await req.client.getGroupMembers(group);\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 group members' });\n }\n}\n\nexport async function addParticipant(req, res) {\n const { groupId, phone } = req.body;\n\n try {\n let response = {};\n let arrayGroups = [];\n\n for (const group of groupToArray(groupId)) {\n response = await req.client.addParticipant(group, contactToArray(phone));\n arrayGroups.push(response);\n }\n\n return res.status(201).json({\n status: 'success',\n response: { message: 'Participant(s) added successfully', participants: phone, groups: arrayGroups },\n });\n } catch (e) {\n req.logger.error(e);\n return res.status(500).json({ status: 'error', message: 'Error adding participant(s)' });\n }\n}\n\nexport async function removeParticipant(req, res) {\n const { groupId, phone } = req.body;\n\n try {\n let response = {};\n let arrayGroups = [];\n\n for (const group of groupToArray(groupId)) {\n response = await req.client.removeParticipant(group, contactToArray(phone));\n arrayGroups.push(response);\n }\n\n return res.status(200).json({\n status: 'success',\n response: { message: 'Participant(s) removed successfully', participants: phone, groups: arrayGroups },\n });\n } catch (e) {\n req.logger.error(e);\n return res.status(500).json({ status: 'error', message: 'Error removing participant(s)' });\n }\n}\n\nexport async function promoteParticipant(req, res) {\n const { groupId, phone } = req.body;\n\n try {\n let arrayGroups = [];\n for (const group of groupToArray(groupId)) {\n await req.client.promoteParticipant(group, contactToArray(phone));\n arrayGroups.push(group);\n }\n\n return res.status(201).json({\n status: 'success',\n response: { message: 'Successful promoted participant(s)', participants: phone, groups: arrayGroups },\n });\n } catch (e) {\n req.logger.error(e);\n return res.status(500).json({ status: 'error', message: 'Error promoting participant(s)' });\n }\n}\n\nexport async function demoteParticipant(req, res) {\n const { groupId, phone } = req.body;\n\n try {\n let arrayGroups = [];\n for (const group of groupToArray(groupId)) {\n await req.client.demoteParticipant(group, contactToArray(phone));\n arrayGroups.push(group);\n }\n\n return res.status(201).json({\n status: 'success',\n response: { message: 'Admin of participant(s) revoked successfully', participants: phone, groups: arrayGroups },\n });\n } catch (e) {\n req.logger.error(e);\n return res.status(500).json({ status: 'error', message: \"Error revoking participant's admin(s)\" });\n }\n}\n\nexport async function getGroupAdmins(req, res) {\n const { groupId } = req.params;\n\n try {\n let response = {};\n let arrayGroups = [];\n\n for (const group of groupToArray(groupId)) {\n response = await req.client.getGroupAdmins(group);\n arrayGroups.push(response);\n }\n\n return res.status(200).json({ status: 'success', response: arrayGroups });\n } catch (e) {\n req.logger.error(e);\n return res.status(500).json({ status: 'error', message: 'Error retrieving group admin(s)' });\n }\n}\n\nexport async function getGroupInviteLink(req, res) {\n const { groupId } = req.params;\n try {\n let response = {};\n for (const group of groupToArray(groupId)) {\n response = await req.client.getGroupInviteLink(group);\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 group invite link' });\n }\n}\n\nexport async function revokeGroupInviteLink(req, res) {\n const { groupId } = req.params;\n\n let response = {};\n\n try {\n for (const group of groupToArray(groupId)) {\n response = await req.client.revokeGroupInviteLink(group);\n }\n\n return res.status(200).json({\n status: 'Success',\n response: response,\n });\n } catch (e) {\n req.logger.error(e);\n return res.status(400).json('Error on revoke group invite link');\n }\n}\n\nexport async function getAllBroadcastList(req, res) {\n try {\n let response = await req.client.getAllBroadcastList();\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 broad cast list' });\n }\n}\n\nexport async function getGroupInfoFromInviteLink(req, res) {\n try {\n const { invitecode } = req.body;\n let response = await req.client.getGroupInfoFromInviteLink(invitecode);\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 group info from invite link' });\n }\n}\n\nexport async function getGroupMembersIds(req, res) {\n const { groupId } = req.params;\n let response = {};\n try {\n for (const group of groupToArray(groupId)) {\n response = await req.client.getGroupMembersIds(group);\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 group members ids' });\n }\n}\n\nexport async function setGroupDescription(req, res) {\n const { groupId, description } = req.body;\n\n let response = {};\n\n try {\n for (const group of groupToArray(groupId)) {\n response = await req.client.setGroupDescription(group, description);\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 set group description' });\n }\n}\n\nexport async function setGroupProperty(req, res) {\n const { groupId, property, value = true } = req.body;\n\n let response = {};\n\n try {\n for (const group of groupToArray(groupId)) {\n response = await req.client.setGroupProperty(group, property, value);\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 set group property' });\n }\n}\n\nexport async function setGroupSubject(req, res) {\n const { groupId, title } = req.body;\n\n let response = {};\n\n try {\n for (const group of groupToArray(groupId)) {\n response = await req.client.setGroupSubject(group, title);\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 set group subject' });\n }\n}\n\nexport async function setMessagesAdminsOnly(req, res) {\n const { groupId, value = true } = req.body;\n\n let response = {};\n\n try {\n for (const group of groupToArray(groupId)) {\n response = await req.client.setMessagesAdminsOnly(group, value);\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 set messages admins only' });\n }\n}\n\nexport async function changePrivacyGroup(req, res) {\n const { groupId, status } = req.body;\n\n try {\n for (const group of contactToArray(groupId)) {\n await req.client.setMessagesAdminsOnly(group, status === 'true');\n }\n\n return res.status(200).json({ status: 'success', response: { message: 'Group privacy changed successfully' } });\n } catch (e) {\n req.logger.error(e);\n return res.status(500).json({ status: 'error', message: 'Error changing group privacy' });\n }\n}\n\nexport async function setGroupProfilePic(req, res) {\n const { phone } = req.body;\n\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 for (const contato of contactToArray(phone, true)) {\n await req.client.setProfilePic(pathFile, contato);\n }\n await unlinkAsync(pathFile);\n\n return res\n .status(201)\n .json({ status: 'success', response: { message: 'Group profile photo successfully changed' } });\n } catch (e) {\n req.logger.error(e);\n return res.status(500).json({ status: 'error', message: 'Error changing group photo' });\n }\n}\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"groupController.js","names":["getAllGroups","req","res","response","client","status","json","e","logger","error","message","joinGroupByCode","inviteCode","body","send","joinGroup","contact","createGroup","participants","name","infoGroup","group","groupNameToArray","contactToArray","push","id","gid","user","map","Object","keys","groupInfo","leaveGroup","groupId","groupToArray","messages","getGroupMembers","params","addParticipant","phone","arrayGroups","groups","removeParticipant","promoteParticipant","demoteParticipant","getGroupAdmins","getGroupInviteLink","revokeGroupInviteLink","getAllBroadcastList","getGroupInfoFromInviteLink","invitecode","getGroupMembersIds","setGroupDescription","description","setGroupProperty","property","value","setGroupSubject","title","setMessagesAdminsOnly","changePrivacyGroup","setGroupProfilePic","path","file","pathFile","contato","setGroupIcon"],"sources":["../../src/controller/groupController.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 { contactToArray, groupNameToArray, groupToArray } from '../util/functions';\n\nexport async function getAllGroups(req, res) {\n try {\n const response = await req.client.getAllGroups();\n\n return res.status(200).json({ status: 'success', response: response });\n } catch (e) {\n req.logger.error(e);\n res.status(500).json({ status: 'error', message: 'Error fetching groups' });\n }\n}\n\nexport async function joinGroupByCode(req, res) {\n const { inviteCode } = req.body;\n\n if (!inviteCode) return res.status(400).send({ message: 'Invitation Code is required' });\n\n try {\n await req.client.joinGroup(inviteCode);\n res.status(201).json({\n status: 'success',\n response: { message: 'The informed contact(s) entered the group successfully', contact: inviteCode },\n });\n } catch (error) {\n req.logger.error(error);\n res.status(500).json({ status: 'error', message: 'The informed contact(s) did not join the group successfully' });\n }\n}\n\nexport async function createGroup(req, res) {\n const { participants, name } = req.body;\n\n try {\n let response = {};\n let infoGroup = [];\n\n for (const group of groupNameToArray(name)) {\n response = await req.client.createGroup(group, contactToArray(participants));\n\n infoGroup.push({\n name: group,\n id: response.gid.user,\n participants: response.participants.map((user) => {\n return { user: Object.keys(user)[0] };\n }),\n });\n }\n\n return res.status(201).json({\n status: 'success',\n response: { message: 'Group(s) created successfully', group: name, groupInfo: infoGroup },\n });\n } catch (e) {\n req.logger.error(e);\n return res.status(500).json({ status: 'error', message: 'Error creating group(s)' });\n }\n}\n\nexport async function leaveGroup(req, res) {\n const { groupId } = req.body;\n\n try {\n for (const group of groupToArray(groupId)) {\n await req.client.leaveGroup(group);\n }\n\n return res.status(200).json({\n status: 'success',\n response: { messages: 'Você saiu do grupo com sucesso', group: groupId },\n });\n } catch (e) {\n req.logger.error(e);\n return res.status(500).json({ status: 'error', message: 'Erro ao sair do(s) grupo(s)' });\n }\n}\n\nexport async function getGroupMembers(req, res) {\n const { groupId } = req.params;\n\n try {\n let response = {};\n for (const group of groupToArray(groupId)) {\n response = await req.client.getGroupMembers(group);\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 group members' });\n }\n}\n\nexport async function addParticipant(req, res) {\n const { groupId, phone } = req.body;\n\n try {\n let response = {};\n let arrayGroups = [];\n\n for (const group of groupToArray(groupId)) {\n response = await req.client.addParticipant(group, contactToArray(phone));\n arrayGroups.push(response);\n }\n\n return res.status(201).json({\n status: 'success',\n response: { message: 'Participant(s) added successfully', participants: phone, groups: arrayGroups },\n });\n } catch (e) {\n req.logger.error(e);\n return res.status(500).json({ status: 'error', message: 'Error adding participant(s)' });\n }\n}\n\nexport async function removeParticipant(req, res) {\n const { groupId, phone } = req.body;\n\n try {\n let response = {};\n let arrayGroups = [];\n\n for (const group of groupToArray(groupId)) {\n response = await req.client.removeParticipant(group, contactToArray(phone));\n arrayGroups.push(response);\n }\n\n return res.status(200).json({\n status: 'success',\n response: { message: 'Participant(s) removed successfully', participants: phone, groups: arrayGroups },\n });\n } catch (e) {\n req.logger.error(e);\n return res.status(500).json({ status: 'error', message: 'Error removing participant(s)' });\n }\n}\n\nexport async function promoteParticipant(req, res) {\n const { groupId, phone } = req.body;\n\n try {\n let arrayGroups = [];\n for (const group of groupToArray(groupId)) {\n await req.client.promoteParticipant(group, contactToArray(phone));\n arrayGroups.push(group);\n }\n\n return res.status(201).json({\n status: 'success',\n response: { message: 'Successful promoted participant(s)', participants: phone, groups: arrayGroups },\n });\n } catch (e) {\n req.logger.error(e);\n return res.status(500).json({ status: 'error', message: 'Error promoting participant(s)' });\n }\n}\n\nexport async function demoteParticipant(req, res) {\n const { groupId, phone } = req.body;\n\n try {\n let arrayGroups = [];\n for (const group of groupToArray(groupId)) {\n await req.client.demoteParticipant(group, contactToArray(phone));\n arrayGroups.push(group);\n }\n\n return res.status(201).json({\n status: 'success',\n response: { message: 'Admin of participant(s) revoked successfully', participants: phone, groups: arrayGroups },\n });\n } catch (e) {\n req.logger.error(e);\n return res.status(500).json({ status: 'error', message: \"Error revoking participant's admin(s)\" });\n }\n}\n\nexport async function getGroupAdmins(req, res) {\n const { groupId } = req.params;\n\n try {\n let response = {};\n let arrayGroups = [];\n\n for (const group of groupToArray(groupId)) {\n response = await req.client.getGroupAdmins(group);\n arrayGroups.push(response);\n }\n\n return res.status(200).json({ status: 'success', response: arrayGroups });\n } catch (e) {\n req.logger.error(e);\n return res.status(500).json({ status: 'error', message: 'Error retrieving group admin(s)' });\n }\n}\n\nexport async function getGroupInviteLink(req, res) {\n const { groupId } = req.params;\n try {\n let response = {};\n for (const group of groupToArray(groupId)) {\n response = await req.client.getGroupInviteLink(group);\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 group invite link' });\n }\n}\n\nexport async function revokeGroupInviteLink(req, res) {\n const { groupId } = req.params;\n\n let response = {};\n\n try {\n for (const group of groupToArray(groupId)) {\n response = await req.client.revokeGroupInviteLink(group);\n }\n\n return res.status(200).json({\n status: 'Success',\n response: response,\n });\n } catch (e) {\n req.logger.error(e);\n return res.status(400).json('Error on revoke group invite link');\n }\n}\n\nexport async function getAllBroadcastList(req, res) {\n try {\n let response = await req.client.getAllBroadcastList();\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 broad cast list' });\n }\n}\n\nexport async function getGroupInfoFromInviteLink(req, res) {\n try {\n const { invitecode } = req.body;\n let response = await req.client.getGroupInfoFromInviteLink(invitecode);\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 group info from invite link' });\n }\n}\n\nexport async function getGroupMembersIds(req, res) {\n const { groupId } = req.params;\n let response = {};\n try {\n for (const group of groupToArray(groupId)) {\n response = await req.client.getGroupMembersIds(group);\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 group members ids' });\n }\n}\n\nexport async function setGroupDescription(req, res) {\n const { groupId, description } = req.body;\n\n let response = {};\n\n try {\n for (const group of groupToArray(groupId)) {\n response = await req.client.setGroupDescription(group, description);\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 set group description' });\n }\n}\n\nexport async function setGroupProperty(req, res) {\n const { groupId, property, value = true } = req.body;\n\n let response = {};\n\n try {\n for (const group of groupToArray(groupId)) {\n response = await req.client.setGroupProperty(group, property, value);\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 set group property' });\n }\n}\n\nexport async function setGroupSubject(req, res) {\n const { groupId, title } = req.body;\n\n let response = {};\n\n try {\n for (const group of groupToArray(groupId)) {\n response = await req.client.setGroupSubject(group, title);\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 set group subject' });\n }\n}\n\nexport async function setMessagesAdminsOnly(req, res) {\n const { groupId, value = true } = req.body;\n\n let response = {};\n\n try {\n for (const group of groupToArray(groupId)) {\n response = await req.client.setMessagesAdminsOnly(group, value);\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 set messages admins only' });\n }\n}\n\nexport async function changePrivacyGroup(req, res) {\n const { groupId, status } = req.body;\n\n try {\n for (const group of contactToArray(groupId)) {\n await req.client.setMessagesAdminsOnly(group, status === 'true');\n }\n\n return res.status(200).json({ status: 'success', response: { message: 'Group privacy changed successfully' } });\n } catch (e) {\n req.logger.error(e);\n return res.status(500).json({ status: 'error', message: 'Error changing group privacy' });\n }\n}\n\nexport async function setGroupProfilePic(req, res) {\n const { phone, path } = 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 for (const contato of contactToArray(phone, true)) {\n await req.client.setGroupIcon(contato, pathFile);\n }\n\n return res\n .status(201)\n .json({ status: 'success', response: { message: 'Group profile photo successfully changed' } });\n } catch (e) {\n req.logger.error(e);\n return res.status(500).json({ status: 'error', message: 'Error changing group photo' });\n }\n}\n"],"mappings":"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"}
|
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports, "__esModule", { value: true });exports.addNewLabel = addNewLabel;exports.addOrRemoveLabels = addOrRemoveLabels;exports.deleteAllLabels = deleteAllLabels;exports.deleteLabel = deleteLabel;exports.getAllLabels = getAllLabels;async function addNewLabel(req, res) {
|
|
2
|
+
const { name, options } = req.body;
|
|
3
|
+
if (!name)
|
|
4
|
+
return res.status(401).send({
|
|
5
|
+
message: 'Name was not informed' });
|
|
6
|
+
|
|
7
|
+
|
|
8
|
+
try {
|
|
9
|
+
const result = await req.client.addNewLabel(name, options);
|
|
10
|
+
res.status(201).json({ status: 'success', response: result });
|
|
11
|
+
} catch (error) {
|
|
12
|
+
res.status(500).json({ status: 'Error', message: 'Erro ao adicionar etiqueta.' });
|
|
13
|
+
}
|
|
14
|
+
}
|
|
15
|
+
|
|
16
|
+
async function addOrRemoveLabels(req, res) {
|
|
17
|
+
const { chatIds, options } = req.body;
|
|
18
|
+
if (!chatIds || !options)
|
|
19
|
+
return res.status(401).send({
|
|
20
|
+
message: 'chatIds or options was not informed' });
|
|
21
|
+
|
|
22
|
+
|
|
23
|
+
try {
|
|
24
|
+
const result = await req.client.addOrRemoveLabels(chatIds, options);
|
|
25
|
+
res.status(201).json({ status: 'success', response: result });
|
|
26
|
+
} catch (error) {
|
|
27
|
+
res.status(500).json({ status: 'Error', message: 'Erro ao adicionar/deletar etiqueta.' });
|
|
28
|
+
}
|
|
29
|
+
}
|
|
30
|
+
|
|
31
|
+
async function getAllLabels(req, res) {
|
|
32
|
+
try {
|
|
33
|
+
const result = await req.client.getAllLabels();
|
|
34
|
+
res.status(201).json({ status: 'success', response: result });
|
|
35
|
+
} catch (error) {
|
|
36
|
+
res.status(500).json({ status: 'Error', message: 'Erro ao buscar etiquetas.' });
|
|
37
|
+
}
|
|
38
|
+
}
|
|
39
|
+
|
|
40
|
+
async function deleteAllLabels(req, res) {
|
|
41
|
+
try {
|
|
42
|
+
const result = await req.client.deleteAllLabels();
|
|
43
|
+
res.status(201).json({ status: 'success', response: result });
|
|
44
|
+
} catch (error) {
|
|
45
|
+
res.status(500).json({ status: 'Error', message: 'Erro ao deletar todas as etiquetas.' });
|
|
46
|
+
}
|
|
47
|
+
}
|
|
48
|
+
|
|
49
|
+
async function deleteLabel(req, res) {
|
|
50
|
+
const { id } = req.paramns;
|
|
51
|
+
try {
|
|
52
|
+
const result = await req.client.deleteLabel(id);
|
|
53
|
+
res.status(201).json({ status: 'success', response: result });
|
|
54
|
+
} catch (error) {
|
|
55
|
+
res.status(500).json({ status: 'Error', message: 'Erro ao deletar etiqueta.' });
|
|
56
|
+
}
|
|
57
|
+
}
|
|
58
|
+
//# sourceMappingURL=labelsController.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"labelsController.js","names":["addNewLabel","req","res","name","options","body","status","send","message","result","client","json","response","error","addOrRemoveLabels","chatIds","getAllLabels","deleteAllLabels","deleteLabel","id","paramns"],"sources":["../../src/controller/labelsController.js"],"sourcesContent":["export async function addNewLabel(req, res) {\n const { name, options } = req.body;\n if (!name)\n return res.status(401).send({\n message: 'Name was not informed',\n });\n\n try {\n const result = await req.client.addNewLabel(name, options);\n res.status(201).json({ status: 'success', response: result });\n } catch (error) {\n res.status(500).json({ status: 'Error', message: 'Erro ao adicionar etiqueta.' });\n }\n}\n\nexport async function addOrRemoveLabels(req, res) {\n const { chatIds, options } = req.body;\n if (!chatIds || !options)\n return res.status(401).send({\n message: 'chatIds or options was not informed',\n });\n\n try {\n const result = await req.client.addOrRemoveLabels(chatIds, options);\n res.status(201).json({ status: 'success', response: result });\n } catch (error) {\n res.status(500).json({ status: 'Error', message: 'Erro ao adicionar/deletar etiqueta.' });\n }\n}\n\nexport async function getAllLabels(req, res) {\n try {\n const result = await req.client.getAllLabels();\n res.status(201).json({ status: 'success', response: result });\n } catch (error) {\n res.status(500).json({ status: 'Error', message: 'Erro ao buscar etiquetas.' });\n }\n}\n\nexport async function deleteAllLabels(req, res) {\n try {\n const result = await req.client.deleteAllLabels();\n res.status(201).json({ status: 'success', response: result });\n } catch (error) {\n res.status(500).json({ status: 'Error', message: 'Erro ao deletar todas as etiquetas.' });\n }\n}\n\nexport async function deleteLabel(req, res) {\n const { id } = req.paramns;\n try {\n const result = await req.client.deleteLabel(id);\n res.status(201).json({ status: 'success', response: result });\n } catch (error) {\n res.status(500).json({ status: 'Error', message: 'Erro ao deletar etiqueta.' });\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.sendFile = sendFile;exports.sendFile64 = sendFile64;exports.sendImage = sendImage;exports.
|
|
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.sendImageAsSticker = sendImageAsSticker;exports.sendImageAsStickerGif = sendImageAsStickerGif;exports.sendLinkPreview = sendLinkPreview;exports.sendListMessage = sendListMessage;exports.sendLocation = sendLocation;exports.sendMentioned = sendMentioned;exports.sendMessage = sendMessage;exports.sendStatusText = sendStatusText;exports.sendVoice = sendVoice;exports.sendVoice64 = sendVoice64;
|
|
2
2
|
|
|
3
3
|
|
|
4
4
|
|
|
@@ -263,62 +263,44 @@ async function sendMentioned(req, res) {
|
|
|
263
263
|
return res.status(500).json({ status: 'error', message: 'Error on send message mentioned' });
|
|
264
264
|
}
|
|
265
265
|
}
|
|
266
|
-
|
|
267
|
-
|
|
268
|
-
const { text } = req.body;
|
|
269
|
-
|
|
270
|
-
if (!text)
|
|
271
|
-
return res.status(401).send({
|
|
272
|
-
message: 'Text was not informed' });
|
|
273
|
-
|
|
274
|
-
|
|
275
|
-
try {
|
|
276
|
-
let results = [];
|
|
277
|
-
results.push(await req.client.sendText('status@broadcast', text));
|
|
278
|
-
|
|
279
|
-
if (results.length === 0) return res.status(400).json('Error sending the text of stories');
|
|
280
|
-
returnSucess(res, results);
|
|
281
|
-
} catch (error) {
|
|
282
|
-
returnError(req, res, error);
|
|
283
|
-
}
|
|
284
|
-
}
|
|
285
|
-
|
|
286
|
-
async function sendImageStorie(req, res) {
|
|
287
|
-
const { path, filename = 'image-storie', caption } = req.body;
|
|
266
|
+
async function sendImageAsSticker(req, res) {
|
|
267
|
+
const { phone, path } = req.body;
|
|
288
268
|
|
|
289
269
|
if (!path && !req.file)
|
|
290
270
|
return res.status(401).send({
|
|
291
|
-
message: 'Sending the
|
|
271
|
+
message: 'Sending the file is mandatory' });
|
|
292
272
|
|
|
293
273
|
|
|
294
274
|
const pathFile = path || req.file.path;
|
|
295
275
|
|
|
296
276
|
try {
|
|
297
277
|
let results = [];
|
|
298
|
-
|
|
278
|
+
for (const contato of phone) {
|
|
279
|
+
results.push(await req.client.sendImageAsSticker(contato, pathFile));
|
|
280
|
+
}
|
|
299
281
|
|
|
300
|
-
if (results.length === 0) return res.status(400).json('Error sending
|
|
282
|
+
if (results.length === 0) return res.status(400).json('Error sending message');
|
|
301
283
|
if (req.file) await (0, _functions.unlinkAsync)(pathFile);
|
|
302
284
|
returnSucess(res, results);
|
|
303
285
|
} catch (error) {
|
|
304
286
|
returnError(req, res, error);
|
|
305
287
|
}
|
|
306
288
|
}
|
|
307
|
-
|
|
308
|
-
|
|
309
|
-
const { path, filename = 'video', caption } = req.body;
|
|
289
|
+
async function sendImageAsStickerGif(req, res) {
|
|
290
|
+
const { phone, path } = req.body;
|
|
310
291
|
|
|
311
292
|
if (!path && !req.file)
|
|
312
293
|
return res.status(401).send({
|
|
313
|
-
message: 'Sending the
|
|
294
|
+
message: 'Sending the file is mandatory' });
|
|
314
295
|
|
|
315
296
|
|
|
316
297
|
const pathFile = path || req.file.path;
|
|
317
298
|
|
|
318
299
|
try {
|
|
319
300
|
let results = [];
|
|
320
|
-
|
|
321
|
-
|
|
301
|
+
for (const contato of phone) {
|
|
302
|
+
results.push(await req.client.sendImageAsStickerGif(contato, pathFile));
|
|
303
|
+
}
|
|
322
304
|
|
|
323
305
|
if (results.length === 0) return res.status(400).json('Error sending message');
|
|
324
306
|
if (req.file) await (0, _functions.unlinkAsync)(pathFile);
|
|
@@ -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","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 } = req.body;\n\n if (!base64) return res.status(401).send({ message: 'The base64 of the file was not informed' });\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.sendFile(contato, base64, options.length > 0 ? options : filename));\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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"}
|
|
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","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","sendImageAsSticker","sendImageAsStickerGif"],"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 } = req.body;\n\n if (!base64) return res.status(401).send({ message: 'The base64 of the file was not informed' });\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.sendFile(contato, base64, options.length > 0 ? options : filename));\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}\nexport async function sendImageAsSticker(req, res) {\n const { phone, 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.sendImageAsSticker(contato, pathFile));\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}\nexport async function sendImageAsStickerGif(req, res) {\n const { phone, 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.sendImageAsStickerGif(contato, pathFile));\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"],"mappings":"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"}
|
|
@@ -18,7 +18,8 @@ var _functions = require("../util/functions");
|
|
|
18
18
|
var _createSessionUtil = _interopRequireDefault(require("../util/createSessionUtil"));
|
|
19
19
|
var _getAllTokens = _interopRequireDefault(require("../util/getAllTokens"));
|
|
20
20
|
var _fs = _interopRequireDefault(require("fs"));
|
|
21
|
-
var _mimeTypes = _interopRequireDefault(require("mime-types"));
|
|
21
|
+
var _mimeTypes = _interopRequireDefault(require("mime-types"));
|
|
22
|
+
var _package = require("../../package.json"); /*
|
|
22
23
|
* Copyright 2021 WPPConnect Team
|
|
23
24
|
*
|
|
24
25
|
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
@@ -153,16 +154,20 @@ async function startSession(req, res) {
|
|
|
153
154
|
async function closeSession(req, res) {
|
|
154
155
|
const session = req.session;
|
|
155
156
|
try {
|
|
156
|
-
_sessionUtil.clientsArray[session]
|
|
157
|
-
|
|
157
|
+
if (_sessionUtil.clientsArray[session].status === null) {
|
|
158
|
+
return await res.status(200).json({ status: true, message: 'Session successfully closed' });
|
|
159
|
+
} else {
|
|
160
|
+
_sessionUtil.clientsArray[session] = { status: null };
|
|
161
|
+
await req.client.close();
|
|
158
162
|
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
+
req.io.emit('whatsapp-status', false);
|
|
164
|
+
(0, _functions.callWebHook)(req.client, req, 'closesession', {
|
|
165
|
+
message: `Session: ${session} disconnected`,
|
|
166
|
+
connected: false });
|
|
163
167
|
|
|
164
168
|
|
|
165
|
-
|
|
169
|
+
return await res.status(200).json({ status: true, message: 'Session successfully closed' });
|
|
170
|
+
}
|
|
166
171
|
} catch (error) {
|
|
167
172
|
req.logger.error(error);
|
|
168
173
|
return await res.status(500).json({ status: false, message: 'Error closing session', error });
|
|
@@ -273,7 +278,8 @@ async function getSessionState(req, res) {
|
|
|
273
278
|
return res.status(200).json({
|
|
274
279
|
status: client.status,
|
|
275
280
|
qrcode: client.qrcode,
|
|
276
|
-
urlcode: client.urlcode
|
|
281
|
+
urlcode: client.urlcode,
|
|
282
|
+
version: _package.version });
|
|
277
283
|
|
|
278
284
|
} catch (ex) {
|
|
279
285
|
req.logger.error(ex);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sessionController.js","names":["SessionUtil","CreateSessionUtil","downloadFileFunction","message","client","logger","buffer","decryptFile","filename","t","fs","existsSync","result","type","mime","extension","mimetype","writeFile","err","error","e","warn","downloadMedia","download","path","replace","startAllSessions","req","res","secretkey","params","authorization","token","headers","tokenDecrypt","undefined","split","allSessions","getAllTokens","serverOptions","secretKey","status","json","response","map","session","util","opendata","showAllSessions","arr","Object","keys","clientsArray","forEach","item","push","startSession","waitQrCode","body","getSessionState","closeSession","close","io","emit","callWebHook","connected","logOutSession","logout","checkConnectionSession","isConnected","downloadMediaByMessage","messageId","isMedia","getMessageById","isMMS","base64","toString","getMediaByMessage","ex","qrcode","urlcode","getQrCode","img","Buffer","from","writeHead","length","end","killServiceWorker","restartService","subscribePresence","phone","isGroup","all","contacts","groups","getAllGroups","p","id","_serialized","chats","getAllContacts","c","contato","contactToArray"],"sources":["../../src/controller/sessionController.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 } from '../util/sessionUtil';\nimport { callWebHook, contactToArray } from '../util/functions';\nimport CreateSessionUtil from '../util/createSessionUtil';\nimport getAllTokens from '../util/getAllTokens';\nimport fs from 'fs';\nimport mime from 'mime-types';\n\nconst SessionUtil = new CreateSessionUtil();\n\nasync function downloadFileFunction(message, client, logger) {\n try {\n const buffer = await client.decryptFile(message);\n\n let filename = `./WhatsAppImages/file${message.t}`;\n if (!fs.existsSync(filename)) {\n let result = '';\n if (message.type === 'ptt') {\n result = `${filename}.oga`;\n } else {\n result = `${filename}.${mime.extension(message.mimetype)}`;\n }\n\n await fs.writeFile(result, buffer, (err) => {\n if (err) {\n logger.error(err);\n }\n });\n\n return result;\n } else {\n return `${filename}.${mime.extension(message.mimetype)}`;\n }\n } catch (e) {\n logger.error(e);\n logger.warn('Erro ao descriptografar a midia, tentando fazer o download direto...');\n try {\n const buffer = await client.downloadMedia(message);\n const filename = `./WhatsAppImages/file${message.t}`;\n if (!fs.existsSync(filename)) {\n let result = '';\n if (message.type === 'ptt') {\n result = `${filename}.oga`;\n } else {\n result = `${filename}.${mime.extension(message.mimetype)}`;\n }\n\n await fs.writeFile(result, buffer, (err) => {\n if (err) {\n logger.error(err);\n }\n });\n\n return result;\n } else {\n return `${filename}.${mime.extension(message.mimetype)}`;\n }\n } catch (e) {\n logger.error(e);\n logger.warn('Não foi possível baixar a mídia...');\n }\n }\n}\n\nexport async function download(message, client, logger) {\n try {\n const path = await downloadFileFunction(message, client, logger);\n return path.replace('./', '');\n } catch (e) {\n logger.error(e);\n }\n}\n\nexport async function startAllSessions(req, res) {\n const { secretkey } = req.params;\n const { authorization: token } = req.headers;\n\n let tokenDecrypt = '';\n\n if (secretkey === undefined) {\n tokenDecrypt = token.split(' ')[0];\n } else {\n tokenDecrypt = secretkey;\n }\n\n const allSessions = await getAllTokens(req);\n\n if (tokenDecrypt !== req.serverOptions.secretKey) {\n return res.status(400).json({\n response: 'error',\n message: 'The token is incorrect',\n });\n }\n\n allSessions.map(async (session) => {\n const util = new CreateSessionUtil();\n await util.opendata(req, session);\n });\n\n return await res.status(201).json({ status: 'success', message: 'Starting all sessions' });\n}\n\nexport async function showAllSessions(req, res) {\n const { secretkey } = req.params;\n const { authorization: token } = req.headers;\n\n let tokenDecrypt = '';\n\n if (secretkey === undefined) {\n tokenDecrypt = token.split(' ')[0];\n } else {\n tokenDecrypt = secretkey;\n }\n\n const arr = [];\n\n if (tokenDecrypt !== req.serverOptions.secretKey) {\n return res.status(400).json({\n response: false,\n message: 'The token is incorrect',\n });\n }\n\n Object.keys(clientsArray).forEach((item) => {\n arr.push({ session: item });\n });\n\n return res.status(200).json({ response: arr });\n}\n\nexport async function startSession(req, res) {\n const session = req.session;\n const { waitQrCode = false } = req.body;\n\n await getSessionState(req, res);\n await SessionUtil.opendata(req, session, waitQrCode ? res : null);\n}\n\nexport async function closeSession(req, res) {\n const session = req.session;\n try {\n clientsArray[session] = { status: null };\n await req.client.close();\n\n req.io.emit('whatsapp-status', false);\n callWebHook(req.client, req, 'closesession', {\n message: `Session: ${session} disconnected`,\n connected: false,\n });\n\n return await res.status(200).json({ status: true, message: 'Session successfully closed' });\n } catch (error) {\n req.logger.error(error);\n return await res.status(500).json({ status: false, message: 'Error closing session', error });\n }\n}\n\nexport async function logOutSession(req, res) {\n try {\n const session = req.session;\n await req.client.logout();\n\n req.io.emit('whatsapp-status', false);\n callWebHook(req.client, req, 'logoutsession', {\n message: `Session: ${session} logged out`,\n connected: false,\n });\n\n return await res.status(200).json({ status: true, message: 'Session successfully closed' });\n } catch (error) {\n req.logger.error(error);\n return await res.status(500).json({ status: false, message: 'Error closing session', error });\n }\n}\n\nexport async function checkConnectionSession(req, res) {\n try {\n await req.client.isConnected();\n\n return res.status(200).json({ status: true, message: 'Connected' });\n } catch (error) {\n return res.status(200).json({ status: false, message: 'Disconnected' });\n }\n}\n\nexport async function downloadMediaByMessage(req, res) {\n const client = req.client;\n const { messageId } = req.body;\n\n let message;\n\n try {\n if (!messageId.isMedia || !messageId.type) {\n message = await client.getMessageById(messageId);\n } else {\n message = messageId;\n }\n\n if (!message)\n return res.status(400).json({\n status: 'error',\n message: 'Message not found',\n });\n\n if (!(message['mimetype'] || message.isMedia || message.isMMS))\n return res.status(400).json({\n status: 'error',\n message: 'Message does not contain media',\n });\n\n const buffer = await client.decryptFile(message);\n\n return res.status(200).json({ base64: buffer.toString('base64'), mimetype: message.mimetype });\n } catch (e) {\n req.logger.error(e);\n return res.status(400).json({\n status: 'error',\n message: 'Decrypt file error',\n });\n }\n}\n\nexport async function getMediaByMessage(req, res) {\n const client = req.client;\n const { messageId } = req.params;\n\n try {\n const message = await client.getMessageById(messageId);\n\n if (!message)\n return res.status(400).json({\n status: 'error',\n message: 'Message not found',\n });\n\n if (!(message['mimetype'] || message.isMedia || message.isMMS))\n return res.status(400).json({\n status: 'error',\n message: 'Message does not contain media',\n });\n\n const buffer = await client.decryptFile(message);\n\n return res.status(200).json({ base64: buffer.toString('base64'), mimetype: message.mimetype });\n } catch (ex) {\n req.logger.error(ex);\n return res.status(500).json({ status: 'error', message: 'The session is not active' });\n }\n}\n\nexport async function getSessionState(req, res) {\n try {\n const { waitQrCode = false } = req.body;\n const client = req.client;\n\n if ((client == null || client.status == null) && !waitQrCode)\n return res.status(200).json({ status: 'CLOSED', qrcode: null });\n else if (client != null)\n return res.status(200).json({\n status: client.status,\n qrcode: client.qrcode,\n urlcode: client.urlcode,\n });\n } catch (ex) {\n req.logger.error(ex);\n return res.status(500).json({ status: 'error', message: 'The session is not active' });\n }\n}\n\nexport async function getQrCode(req, res) {\n try {\n const img = Buffer.from(req.client.qrcode.replace(/^data:image\\/(png|jpeg|jpg);base64,/, ''), 'base64');\n\n res.writeHead(200, {\n 'Content-Type': 'image/png',\n 'Content-Length': img.length,\n });\n res.end(img);\n } catch (ex) {\n req.logger.error(ex);\n return res.status(500).json({ status: 'error', message: 'Error retrieving QRCode' });\n }\n}\n\nexport async function killServiceWorker(req, res) {\n try {\n return res.status(200).json({ status: 'success', response: req.client.killServiceWorker() });\n } catch (ex) {\n req.logger.error(ex);\n return res.status(500).json({ status: 'error', message: 'The session is not active' });\n }\n}\n\nexport async function restartService(req, res) {\n try {\n return res.status(200).json({ status: 'success', response: req.client.restartService() });\n } catch (ex) {\n req.logger.error(ex);\n return res.status(500).json({ status: 'error', response: { message: 'The session is not active' } });\n }\n}\n\nexport async function subscribePresence(req, res) {\n try {\n const { phone, isGroup = false, all = false } = req.body;\n\n if (all) {\n let contacts;\n if (isGroup) {\n const groups = await req.client.getAllGroups(false);\n contacts = groups.map((p) => p.id._serialized);\n } else {\n const chats = await req.client.getAllContacts();\n contacts = chats.map((c) => c.id._serialized);\n }\n await req.client.subscribePresence(contacts);\n } else\n for (const contato of contactToArray(phone, isGroup)) {\n await req.client.subscribePresence(contato);\n }\n\n return await res.status(200).json({ status: 'success', response: { message: 'Subscribe presence executed' } });\n } catch (error) {\n return await res.status(500).json({ status: 'error', message: 'Error on subscribe presence', error });\n }\n}\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"sessionController.js","names":["SessionUtil","CreateSessionUtil","downloadFileFunction","message","client","logger","buffer","decryptFile","filename","t","fs","existsSync","result","type","mime","extension","mimetype","writeFile","err","error","e","warn","downloadMedia","download","path","replace","startAllSessions","req","res","secretkey","params","authorization","token","headers","tokenDecrypt","undefined","split","allSessions","getAllTokens","serverOptions","secretKey","status","json","response","map","session","util","opendata","showAllSessions","arr","Object","keys","clientsArray","forEach","item","push","startSession","waitQrCode","body","getSessionState","closeSession","close","io","emit","callWebHook","connected","logOutSession","logout","checkConnectionSession","isConnected","downloadMediaByMessage","messageId","isMedia","getMessageById","isMMS","base64","toString","getMediaByMessage","ex","qrcode","urlcode","version","getQrCode","img","Buffer","from","writeHead","length","end","killServiceWorker","restartService","subscribePresence","phone","isGroup","all","contacts","groups","getAllGroups","p","id","_serialized","chats","getAllContacts","c","contato","contactToArray"],"sources":["../../src/controller/sessionController.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 } from '../util/sessionUtil';\nimport { callWebHook, contactToArray } from '../util/functions';\nimport CreateSessionUtil from '../util/createSessionUtil';\nimport getAllTokens from '../util/getAllTokens';\nimport fs from 'fs';\nimport mime from 'mime-types';\nimport { version } from '../../package.json';\n\nconst SessionUtil = new CreateSessionUtil();\n\nasync function downloadFileFunction(message, client, logger) {\n try {\n const buffer = await client.decryptFile(message);\n\n let filename = `./WhatsAppImages/file${message.t}`;\n if (!fs.existsSync(filename)) {\n let result = '';\n if (message.type === 'ptt') {\n result = `${filename}.oga`;\n } else {\n result = `${filename}.${mime.extension(message.mimetype)}`;\n }\n\n await fs.writeFile(result, buffer, (err) => {\n if (err) {\n logger.error(err);\n }\n });\n\n return result;\n } else {\n return `${filename}.${mime.extension(message.mimetype)}`;\n }\n } catch (e) {\n logger.error(e);\n logger.warn('Erro ao descriptografar a midia, tentando fazer o download direto...');\n try {\n const buffer = await client.downloadMedia(message);\n const filename = `./WhatsAppImages/file${message.t}`;\n if (!fs.existsSync(filename)) {\n let result = '';\n if (message.type === 'ptt') {\n result = `${filename}.oga`;\n } else {\n result = `${filename}.${mime.extension(message.mimetype)}`;\n }\n\n await fs.writeFile(result, buffer, (err) => {\n if (err) {\n logger.error(err);\n }\n });\n\n return result;\n } else {\n return `${filename}.${mime.extension(message.mimetype)}`;\n }\n } catch (e) {\n logger.error(e);\n logger.warn('Não foi possível baixar a mídia...');\n }\n }\n}\n\nexport async function download(message, client, logger) {\n try {\n const path = await downloadFileFunction(message, client, logger);\n return path.replace('./', '');\n } catch (e) {\n logger.error(e);\n }\n}\n\nexport async function startAllSessions(req, res) {\n const { secretkey } = req.params;\n const { authorization: token } = req.headers;\n\n let tokenDecrypt = '';\n\n if (secretkey === undefined) {\n tokenDecrypt = token.split(' ')[0];\n } else {\n tokenDecrypt = secretkey;\n }\n\n const allSessions = await getAllTokens(req);\n\n if (tokenDecrypt !== req.serverOptions.secretKey) {\n return res.status(400).json({\n response: 'error',\n message: 'The token is incorrect',\n });\n }\n\n allSessions.map(async (session) => {\n const util = new CreateSessionUtil();\n await util.opendata(req, session);\n });\n\n return await res.status(201).json({ status: 'success', message: 'Starting all sessions' });\n}\n\nexport async function showAllSessions(req, res) {\n const { secretkey } = req.params;\n const { authorization: token } = req.headers;\n\n let tokenDecrypt = '';\n\n if (secretkey === undefined) {\n tokenDecrypt = token.split(' ')[0];\n } else {\n tokenDecrypt = secretkey;\n }\n\n const arr = [];\n\n if (tokenDecrypt !== req.serverOptions.secretKey) {\n return res.status(400).json({\n response: false,\n message: 'The token is incorrect',\n });\n }\n\n Object.keys(clientsArray).forEach((item) => {\n arr.push({ session: item });\n });\n\n return res.status(200).json({ response: arr });\n}\n\nexport async function startSession(req, res) {\n const session = req.session;\n const { waitQrCode = false } = req.body;\n\n await getSessionState(req, res);\n await SessionUtil.opendata(req, session, waitQrCode ? res : null);\n}\n\nexport async function closeSession(req, res) {\n const session = req.session;\n try {\n if (clientsArray[session].status === null) {\n return await res.status(200).json({ status: true, message: 'Session successfully closed' });\n } else {\n clientsArray[session] = { status: null };\n await req.client.close();\n\n req.io.emit('whatsapp-status', false);\n callWebHook(req.client, req, 'closesession', {\n message: `Session: ${session} disconnected`,\n connected: false,\n });\n\n return await res.status(200).json({ status: true, message: 'Session successfully closed' });\n }\n } catch (error) {\n req.logger.error(error);\n return await res.status(500).json({ status: false, message: 'Error closing session', error });\n }\n}\n\nexport async function logOutSession(req, res) {\n try {\n const session = req.session;\n await req.client.logout();\n\n req.io.emit('whatsapp-status', false);\n callWebHook(req.client, req, 'logoutsession', {\n message: `Session: ${session} logged out`,\n connected: false,\n });\n\n return await res.status(200).json({ status: true, message: 'Session successfully closed' });\n } catch (error) {\n req.logger.error(error);\n return await res.status(500).json({ status: false, message: 'Error closing session', error });\n }\n}\n\nexport async function checkConnectionSession(req, res) {\n try {\n await req.client.isConnected();\n\n return res.status(200).json({ status: true, message: 'Connected' });\n } catch (error) {\n return res.status(200).json({ status: false, message: 'Disconnected' });\n }\n}\n\nexport async function downloadMediaByMessage(req, res) {\n const client = req.client;\n const { messageId } = req.body;\n\n let message;\n\n try {\n if (!messageId.isMedia || !messageId.type) {\n message = await client.getMessageById(messageId);\n } else {\n message = messageId;\n }\n\n if (!message)\n return res.status(400).json({\n status: 'error',\n message: 'Message not found',\n });\n\n if (!(message['mimetype'] || message.isMedia || message.isMMS))\n return res.status(400).json({\n status: 'error',\n message: 'Message does not contain media',\n });\n\n const buffer = await client.decryptFile(message);\n\n return res.status(200).json({ base64: buffer.toString('base64'), mimetype: message.mimetype });\n } catch (e) {\n req.logger.error(e);\n return res.status(400).json({\n status: 'error',\n message: 'Decrypt file error',\n });\n }\n}\n\nexport async function getMediaByMessage(req, res) {\n const client = req.client;\n const { messageId } = req.params;\n\n try {\n const message = await client.getMessageById(messageId);\n\n if (!message)\n return res.status(400).json({\n status: 'error',\n message: 'Message not found',\n });\n\n if (!(message['mimetype'] || message.isMedia || message.isMMS))\n return res.status(400).json({\n status: 'error',\n message: 'Message does not contain media',\n });\n\n const buffer = await client.decryptFile(message);\n\n return res.status(200).json({ base64: buffer.toString('base64'), mimetype: message.mimetype });\n } catch (ex) {\n req.logger.error(ex);\n return res.status(500).json({ status: 'error', message: 'The session is not active' });\n }\n}\n\nexport async function getSessionState(req, res) {\n try {\n const { waitQrCode = false } = req.body;\n const client = req.client;\n\n if ((client == null || client.status == null) && !waitQrCode)\n return res.status(200).json({ status: 'CLOSED', qrcode: null });\n else if (client != null)\n return res.status(200).json({\n status: client.status,\n qrcode: client.qrcode,\n urlcode: client.urlcode,\n version: version,\n });\n } catch (ex) {\n req.logger.error(ex);\n return res.status(500).json({ status: 'error', message: 'The session is not active' });\n }\n}\n\nexport async function getQrCode(req, res) {\n try {\n const img = Buffer.from(req.client.qrcode.replace(/^data:image\\/(png|jpeg|jpg);base64,/, ''), 'base64');\n\n res.writeHead(200, {\n 'Content-Type': 'image/png',\n 'Content-Length': img.length,\n });\n res.end(img);\n } catch (ex) {\n req.logger.error(ex);\n return res.status(500).json({ status: 'error', message: 'Error retrieving QRCode' });\n }\n}\n\nexport async function killServiceWorker(req, res) {\n try {\n return res.status(200).json({ status: 'success', response: req.client.killServiceWorker() });\n } catch (ex) {\n req.logger.error(ex);\n return res.status(500).json({ status: 'error', message: 'The session is not active' });\n }\n}\n\nexport async function restartService(req, res) {\n try {\n return res.status(200).json({ status: 'success', response: req.client.restartService() });\n } catch (ex) {\n req.logger.error(ex);\n return res.status(500).json({ status: 'error', response: { message: 'The session is not active' } });\n }\n}\n\nexport async function subscribePresence(req, res) {\n try {\n const { phone, isGroup = false, all = false } = req.body;\n\n if (all) {\n let contacts;\n if (isGroup) {\n const groups = await req.client.getAllGroups(false);\n contacts = groups.map((p) => p.id._serialized);\n } else {\n const chats = await req.client.getAllContacts();\n contacts = chats.map((c) => c.id._serialized);\n }\n await req.client.subscribePresence(contacts);\n } else\n for (const contato of contactToArray(phone, isGroup)) {\n await req.client.subscribePresence(contato);\n }\n\n return await res.status(200).json({ status: 'success', response: { message: 'Subscribe presence executed' } });\n } catch (error) {\n return await res.status(500).json({ status: 'error', message: 'Error on subscribe presence', error });\n }\n}\n"],"mappings":"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"}
|