diff --git a/src/lib/wapi/functions/check-number-status.js b/src/lib/wapi/functions/check-number-status.js index 06725c309..cb89013e8 100644 --- a/src/lib/wapi/functions/check-number-status.js +++ b/src/lib/wapi/functions/check-number-status.js @@ -30,7 +30,6 @@ export async function checkNumberStatus(id, conn = true) { throw err; } catch (e) { - console.log(e); return { status: e.error, text: e.text diff --git a/src/lib/wapi/functions/check-send-exist.js b/src/lib/wapi/functions/check-send-exist.js index 8362782b6..ca65c3002 100644 --- a/src/lib/wapi/functions/check-send-exist.js +++ b/src/lib/wapi/functions/check-send-exist.js @@ -65,10 +65,11 @@ export function scope(id, erro, status, text = null, result = null) { } export async function getchatId(chatId) { if (chatId) { - var to = await WAPI.getChatById(chatId); + let to = await WAPI.getChatById(chatId); if (to && typeof to === 'object') { - var objTo = to.lastReceivedKey, - extend = { + let objTo = to.lastReceivedKey; + if (objTo && typeof objTo === 'object') { + let extend = { formattedName: to.contact.formattedName, isBusiness: to.contact.isBusiness, isMyContact: to.contact.isMyContact, @@ -76,11 +77,12 @@ export async function getchatId(chatId) { pushname: to.contact.pushname, isOnline: to.isOnline }; - Object.assign(objTo, extend); - return objTo; + Object.assign(objTo, extend); + return objTo; + } } - return undefined; } + return undefined; } export function sendCheckType(chatId = undefined) { @@ -150,15 +152,9 @@ export async function sendExist(chatId, returnChat = true, Send = true) { if (!!checkType && checkType.status === 404) { return checkType; } - let ck = await window.WAPI.checkNumberStatus(chatId); + let ck = await window.WAPI.checkNumberStatus(chatId, false); - if ( - ck.status === 404 && - ck.id && - ck.id._serialized && - ck.id._serialized.include && - !ck.id._serialized.include('@g.us') - ) { + if (ck.status === 404 && !chatId.includes('@g.us')) { return WAPI.scope(chatId, true, ck.status, 'The number does not exist'); } diff --git a/src/lib/wapi/functions/forward-messages.js b/src/lib/wapi/functions/forward-messages.js index 3b8e97162..db1b80f2d 100644 --- a/src/lib/wapi/functions/forward-messages.js +++ b/src/lib/wapi/functions/forward-messages.js @@ -71,7 +71,7 @@ export async function forwardMessages(chatId, messages, skipMyMessages) { return new Promise(async (resolve, reject) => { if (chat.id) { - let newMsgId = await window.WAPI.getNewMessageId(chat.id); + let newMsgId = await window.WAPI.getNewMessageId(chat.id._serialized); let inChat = await WAPI.getchatId(chat.id).catch(() => {}); if (inChat) { chat.lastReceivedKey._serialized = inChat._serialized; diff --git a/src/lib/wapi/functions/get-chat.js b/src/lib/wapi/functions/get-chat.js index 46531b5b6..2b0dd1c84 100644 --- a/src/lib/wapi/functions/get-chat.js +++ b/src/lib/wapi/functions/get-chat.js @@ -53,14 +53,23 @@ MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMNNNNMMNNNMMMMMMMMMMMMMMMMM MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM */ export function getChat(id) { - if (!id) return false; + if (!id) { + return false; + } id = typeof id == 'string' ? id : id._serialized; - const found = window.Store.Chat.get(id); - if (found) + let found = Store.Chat.get(id); + if (!found) { + const ConstructChat = new window.Store.UserConstructor(id, { + intentionallyUsePrivateConstructor: !0 + }); + found = Store.Chat.find(ConstructChat) || false; + } + if (found) { found.sendMessage = found.sendMessage ? found.sendMessage : function () { return window.Store.sendMessage.apply(this, arguments); }; + } return found; } diff --git a/src/lib/wapi/functions/get-new-message-id.js b/src/lib/wapi/functions/get-new-message-id.js index d15e8701f..884a49b0c 100644 --- a/src/lib/wapi/functions/get-new-message-id.js +++ b/src/lib/wapi/functions/get-new-message-id.js @@ -58,7 +58,7 @@ export async function getNewMessageId(chatId) { const newMsgId = new Object(); newMsgId.fromMe = true; newMsgId.id = await WAPI.getNewId().toUpperCase(); - newMsgId.remote = new Store.WidFactory.createWid(chatId); + newMsgId.remote = new Store.WidFactory.createWid(chat.id._serialized); newMsgId._serialized = `${newMsgId.fromMe}_${newMsgId.remote}_${newMsgId.id}`; const Msgkey = new Store.MsgKey(newMsgId); return Msgkey; diff --git a/src/lib/wapi/functions/send-buttons.js b/src/lib/wapi/functions/send-buttons.js index 2444e1cd1..7225487cb 100644 --- a/src/lib/wapi/functions/send-buttons.js +++ b/src/lib/wapi/functions/send-buttons.js @@ -101,7 +101,7 @@ export async function sendButtons(to, title, buttons, subtitle) { const chat = await WAPI.sendExist(to); if (chat && chat.status != 404 && chat.id) { - const newMsgId = await window.WAPI.getNewMessageId(chat.id); + const newMsgId = await window.WAPI.getNewMessageId(chat.id._serialized); const fromwWid = await Store.MaybeMeUser.getMaybeMeUser(); const message = { diff --git a/src/lib/wapi/functions/send-contact-vcard-list.js b/src/lib/wapi/functions/send-contact-vcard-list.js index c88e9f3d3..0bfe09b77 100644 --- a/src/lib/wapi/functions/send-contact-vcard-list.js +++ b/src/lib/wapi/functions/send-contact-vcard-list.js @@ -102,7 +102,7 @@ export async function sendContactVcardList(chatId, contacts) { } }); - var newMsgId = await window.WAPI.getNewMessageId(chat.id); + var newMsgId = await window.WAPI.getNewMessageId(chat.id._serialized); const fromwWid = await Store.MaybeMeUser.getMaybeMeUser(); let inChat = await WAPI.getchatId(chat.id).catch(() => {}); diff --git a/src/lib/wapi/functions/send-contact-vcard.js b/src/lib/wapi/functions/send-contact-vcard.js index e269123ac..cfb3628d5 100644 --- a/src/lib/wapi/functions/send-contact-vcard.js +++ b/src/lib/wapi/functions/send-contact-vcard.js @@ -57,7 +57,7 @@ export async function sendContactVcard(chatId, contact, name) { const cont = await WAPI.sendExist(contact); if (chat.id && cont.id) { - const newMsgId = await window.WAPI.getNewMessageId(chat.id); + const newMsgId = await window.WAPI.getNewMessageId(chat.id._serialized); const inChat = await WAPI.getchatId(chat.id).catch(() => {}); if (inChat) { diff --git a/src/lib/wapi/functions/send-link-preview.js b/src/lib/wapi/functions/send-link-preview.js index 65a102ee4..c4976ba8a 100644 --- a/src/lib/wapi/functions/send-link-preview.js +++ b/src/lib/wapi/functions/send-link-preview.js @@ -81,7 +81,7 @@ export async function sendLinkPreview(chatId, url, text) { var chat = await WAPI.sendExist(chatId); if (!chat.erro) { const linkPreview = await Store.WapQuery.queryLinkPreview(url); - const newMsgId = await window.WAPI.getNewMessageId(chat.id); + const newMsgId = await window.WAPI.getNewMessageId(chat.id._serialized); let inChat = await WAPI.getchatId(chat.id).catch(() => {}); if (inChat) { chat.lastReceivedKey._serialized = inChat._serialized; diff --git a/src/lib/wapi/functions/send-list-menu.js b/src/lib/wapi/functions/send-list-menu.js index 4f37b4bd1..3150922a7 100644 --- a/src/lib/wapi/functions/send-list-menu.js +++ b/src/lib/wapi/functions/send-list-menu.js @@ -159,7 +159,7 @@ export async function sendListMenu( const chat = await WAPI.sendExist(to); if (chat && chat.status != 404 && chat.id) { - const newMsgId = await window.WAPI.getNewMessageId(chat.id); + const newMsgId = await window.WAPI.getNewMessageId(chat.id._serialized); const fromwWid = await Store.MaybeMeUser.getMaybeMeUser(); const inChat = await WAPI.getchatId(chat.id).catch(() => {}); diff --git a/src/lib/wapi/functions/send-location.js b/src/lib/wapi/functions/send-location.js index fceb0a5c2..576dfac96 100644 --- a/src/lib/wapi/functions/send-location.js +++ b/src/lib/wapi/functions/send-location.js @@ -61,7 +61,7 @@ export async function sendLocation( const chat = await WAPI.sendExist(chatId); if (chat && chat.status != 404 && chat.id) { - const newMsgId = await window.WAPI.getNewMessageId(chat.id); + const newMsgId = await window.WAPI.getNewMessageId(chat.id._serialized); const inChat = await WAPI.getchatId(chat.id).catch(() => {}); const fromwWid = await Store.MaybeMeUser.getMaybeMeUser(); diff --git a/src/lib/wapi/functions/send-message.js b/src/lib/wapi/functions/send-message.js index dbebaca67..0164ad6b3 100644 --- a/src/lib/wapi/functions/send-message.js +++ b/src/lib/wapi/functions/send-message.js @@ -70,8 +70,9 @@ export async function sendMessage(to, content) { if (chat && chat.status != 404 && chat.id) { const m = { type: 'sendText', text: content }; - const newMsgId = await window.WAPI.getNewMessageId(chat.id); + const newMsgId = await window.WAPI.getNewMessageId(chat.id._serialized); const fromwWid = await Store.MaybeMeUser.getMaybeMeUser(); + let inChat = await WAPI.getchatId(chat.id).catch(() => { return WAPI.scope(chat.id, true, 404, 'Error to number ' + to); }); diff --git a/src/lib/wapi/functions/sendMessageOptions.js b/src/lib/wapi/functions/sendMessageOptions.js index 67701da11..13a97ad47 100644 --- a/src/lib/wapi/functions/sendMessageOptions.js +++ b/src/lib/wapi/functions/sendMessageOptions.js @@ -156,7 +156,7 @@ export async function sendMessageOptions(chatId, content, options = {}) { options = { ...options, ...preview }; } } - const newMsgId = await window.WAPI.getNewMessageId(chat.id); + const newMsgId = await window.WAPI.getNewMessageId(chat.id._serialized); const fromwWid = await Store.MaybeMeUser.getMaybeMeUser(); const message = { ...options,