mirror of
https://github.com/cheveguerra/whaticket-community.git
synced 2026-04-18 11:49:19 +00:00
feat: start delete whatsapp messages backend
This commit is contained in:
20
backend/src/services/MessageServices/UpdateMessageService.ts
Normal file
20
backend/src/services/MessageServices/UpdateMessageService.ts
Normal file
@@ -0,0 +1,20 @@
|
||||
import Message from "../../models/Message";
|
||||
|
||||
interface MessageData {
|
||||
isDeleted?: boolean;
|
||||
}
|
||||
|
||||
interface Request {
|
||||
messageData: MessageData;
|
||||
messageId: string;
|
||||
}
|
||||
|
||||
const UpdateMessageService = async ({
|
||||
messageData,
|
||||
messageId
|
||||
}: Request): Promise<Response> => {
|
||||
const { isDeleted } = messageData;
|
||||
const message = Message.update({ where: {messageId}, { isDeleted: true } } );
|
||||
};
|
||||
|
||||
export default UpdateMessageService;
|
||||
36
backend/src/services/WbotServices/DeleteWhatsAppMessage.ts
Normal file
36
backend/src/services/WbotServices/DeleteWhatsAppMessage.ts
Normal file
@@ -0,0 +1,36 @@
|
||||
import AppError from "../../errors/AppError";
|
||||
import GetWbotMessage from "../../helpers/GetWbotMessage";
|
||||
import Message from "../../models/Message";
|
||||
import Ticket from "../../models/Ticket";
|
||||
|
||||
const DeleteWhatsAppMessage = async (messageId: string): Promise<Message> => {
|
||||
const message = await Message.findByPk(messageId, {
|
||||
include: [
|
||||
{
|
||||
model: Ticket,
|
||||
as: "ticket",
|
||||
include: ["contact"]
|
||||
}
|
||||
]
|
||||
});
|
||||
|
||||
if (!message) {
|
||||
throw new AppError("No message found with this ID.");
|
||||
}
|
||||
|
||||
const { ticket } = message;
|
||||
|
||||
const messageToDelete = await GetWbotMessage(ticket, messageId);
|
||||
|
||||
try {
|
||||
await messageToDelete.delete(true);
|
||||
} catch (err) {
|
||||
throw new AppError(
|
||||
"Couldn't delete message from WhatsApp. Check connections page."
|
||||
);
|
||||
}
|
||||
|
||||
return message;
|
||||
};
|
||||
|
||||
export default DeleteWhatsAppMessage;
|
||||
Reference in New Issue
Block a user