Standardize bridge send/receive params
This commit is contained in:
parent
69abe9bee1
commit
c32c26088f
23 changed files with 7042 additions and 1276 deletions
|
|
@ -95,10 +95,6 @@ export default class WhatsappService extends Service {
|
|||
const botDirectory = this.getBotDirectory(botID);
|
||||
const qrPath = `${botDirectory}/qr.txt`;
|
||||
fs.writeFileSync(qrPath, qr, "utf8");
|
||||
const verifiedFile = `${botDirectory}/verified`;
|
||||
if (fs.existsSync(verifiedFile)) {
|
||||
fs.rmSync(verifiedFile);
|
||||
}
|
||||
} else if (isNewLogin) {
|
||||
console.log("got new login");
|
||||
const botDirectory = this.getBotDirectory(botID);
|
||||
|
|
@ -110,7 +106,6 @@ export default class WhatsappService extends Service {
|
|||
console.log("connection closed due to ", lastDisconnect?.error);
|
||||
const disconnectStatusCode = (lastDisconnect?.error as any)?.output
|
||||
?.statusCode;
|
||||
|
||||
if (disconnectStatusCode === DisconnectReason.restartRequired) {
|
||||
console.log("reconnecting after got new login");
|
||||
await this.createConnection(botID, server, options);
|
||||
|
|
@ -181,26 +176,26 @@ export default class WhatsappService extends Service {
|
|||
|
||||
const messageContent = Object.values(message)[0];
|
||||
let messageType: MediaType;
|
||||
let attachment: string;
|
||||
let attachment: string | null | undefined;
|
||||
let filename: string | null | undefined;
|
||||
let mimetype: string | null | undefined;
|
||||
let mimeType: string | null | undefined;
|
||||
if (isMediaMessage) {
|
||||
if (audioMessage) {
|
||||
messageType = "audio";
|
||||
filename = id + "." + audioMessage.mimetype?.split("/").pop();
|
||||
mimetype = audioMessage.mimetype;
|
||||
mimeType = audioMessage.mimetype;
|
||||
} else if (documentMessage) {
|
||||
messageType = "document";
|
||||
filename = documentMessage.fileName;
|
||||
mimetype = documentMessage.mimetype;
|
||||
mimeType = documentMessage.mimetype;
|
||||
} else if (imageMessage) {
|
||||
messageType = "image";
|
||||
filename = id + "." + imageMessage.mimetype?.split("/").pop();
|
||||
mimetype = imageMessage.mimetype;
|
||||
mimeType = imageMessage.mimetype;
|
||||
} else if (videoMessage) {
|
||||
messageType = "video";
|
||||
filename = id + "." + videoMessage.mimetype?.split("/").pop();
|
||||
mimetype = videoMessage.mimetype;
|
||||
mimeType = videoMessage.mimetype;
|
||||
}
|
||||
|
||||
const stream = await downloadContentFromMessage(
|
||||
|
|
@ -217,17 +212,6 @@ export default class WhatsappService extends Service {
|
|||
|
||||
// @ts-ignore
|
||||
if (messageContent || attachment) {
|
||||
const receivedMessage = {
|
||||
waMessageId: id,
|
||||
waMessage: JSON.stringify(webMessageInfo),
|
||||
waTimestamp: new Date((messageTimestamp as number) * 1000),
|
||||
// @ts-ignore
|
||||
attachment,
|
||||
filename,
|
||||
mimetype,
|
||||
whatsappBotId: botID,
|
||||
};
|
||||
|
||||
const message =
|
||||
webMessageInfo?.message?.conversation ??
|
||||
webMessageInfo?.message?.extendedTextMessage?.text ??
|
||||
|
|
@ -235,8 +219,14 @@ export default class WhatsappService extends Service {
|
|||
webMessageInfo?.message?.videoMessage?.caption;
|
||||
|
||||
const payload = {
|
||||
to: botID,
|
||||
from: webMessageInfo.key.remoteJid?.split("@")[0],
|
||||
messageId: id,
|
||||
sentAt: new Date((messageTimestamp as number) * 1000).toISOString(),
|
||||
message,
|
||||
sender: webMessageInfo.key.remoteJid?.split("@")[0],
|
||||
attachment,
|
||||
filename,
|
||||
mimeType,
|
||||
};
|
||||
|
||||
await fetch(
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue