Alteração no cache

pull/21/head
adriano 2022-12-23 13:35:07 -03:00
parent 7c7627873c
commit 2c6b6c7309
5 changed files with 44 additions and 14 deletions

View File

@ -18,7 +18,7 @@ const autoRestore = async (whatsappId: string | number, started_action_by: strin
// console.log('>>>>>>>>>>> Whatsapp.id: ', whatsappId) // console.log('>>>>>>>>>>> Whatsapp.id: ', whatsappId)
restartWhatsSession(whatsapp, true) await restartWhatsSession(whatsapp, true)
const sourcePath = path.join(__dirname, `../../.wwebjs_auth/sessions/log`) const sourcePath = path.join(__dirname, `../../.wwebjs_auth/sessions/log`)

View File

@ -0,0 +1,24 @@
// require fs module
const fs = require("fs");
// Delete a directory and its children
export const creationTime = (sourcePath: string) => {
if (fs.existsSync(sourcePath)) {
try {
const { birthtime } = fs.statSync(sourcePath)
return birthtime
} catch (error) {
console.log(`There was an error on trying get de file/directory creation info from ${sourcePath}: `, error)
}
}
return
}

View File

@ -142,7 +142,7 @@ export const getRestoreControll = () => {
export const _restore = async (whatsapp: Whatsapp, msg_file_title: string) => { export const _restore = async (whatsapp: Whatsapp, msg_file_title: string) => {
if (whatsapp.status != 'RESTORING') { if (whatsapp.status != 'RESTORING' && whatsapp.status != 'qrcode') {
console.log('THE WHATSAAP ID: ', whatsapp.id, ' WILL BE RESTORED SOON!') console.log('THE WHATSAAP ID: ', whatsapp.id, ' WILL BE RESTORED SOON!')

View File

@ -117,6 +117,7 @@ async function searchWhatsappCache(id: string, status: string) {
const number_cache: any = await redis.hgetall(`whatsapp:${id}`) const number_cache: any = await redis.hgetall(`whatsapp:${id}`)
if(Object.entries(number_cache).length == 0){ if(Object.entries(number_cache).length == 0){
redis.quit()
return [] return []
} }

View File

@ -10,19 +10,24 @@ import { getRestoreControll, setRestoreControll, shifRestoreControll } from "../
import ShowWhatsAppService from "../WhatsappService/ShowWhatsAppService"; import ShowWhatsAppService from "../WhatsappService/ShowWhatsAppService";
import { restartWhatsSession } from "../../helpers/RestartWhatsSession"; import { restartWhatsSession } from "../../helpers/RestartWhatsSession";
import dir from 'path';
import autoRestore from "../../helpers/AutoRestore"; import autoRestore from "../../helpers/AutoRestore";
import { creationTime } from "../../helpers/CreationTime";
import { splitDateTime } from "../../helpers/SplitDateTime";
import { format } from "date-fns";
import ptBR from 'date-fns/locale/pt-BR';
let lstAutoRestore: any = [] let lstAutoRestore: any = []
export const StartWhatsAppSession = async (whatsapp: Whatsapp, backupSession: boolean = false): Promise<void> => { export const StartWhatsAppSession = async (whatsapp: Whatsapp, backupSession: boolean = false): Promise<void> => {
await whatsapp.update({ status: "OPENING" }); await whatsapp.update({ status: "OPENING" });
await insertOrUpeateWhatsCache(`whatsapp:${whatsapp.id}`, { await insertOrUpeateWhatsCache(`whatsapp:${whatsapp.id}`, {
status: "OPENING", status: "OPENING",
}) })
try { try {
let lstRestore: any = getRestoreControll() let lstRestore: any = getRestoreControll()
@ -34,7 +39,7 @@ export const StartWhatsAppSession = async (whatsapp: Whatsapp, backupSession: bo
} }
else { else {
lstAutoRestore.push({ 'whatsappId': +whatsapp.id }) lstAutoRestore.push({ 'whatsappId': +whatsapp.id })
setTimeout(async () => { setTimeout(async () => {
@ -46,22 +51,22 @@ export const StartWhatsAppSession = async (whatsapp: Whatsapp, backupSession: bo
let autoR = lstAutoRestore.shift() let autoR = lstAutoRestore.shift()
console.log('----------------> autoR: ', autoR) console.log('----------------> autoR: ', autoR)
if (autoR && autoR.whatsappId) { if (autoR && autoR.whatsappId) {
if (Object.keys(lstRestore.filter((e: any) => +e.id == +autoR.whatsappId)).length) { if (Object.keys(lstRestore.filter((e: any) => +e.id == +autoR.whatsappId)).length) {
console.log(' EXECUTING RESTORING autoR: ', autoR) console.log(' EXECUTING RESTORING autoR: ', autoR)
continue continue
} }
const _whatsapp = await Whatsapp.findOne({ where: { id: autoR.whatsappId } }); const _whatsapp = await Whatsapp.findOne({ where: { id: autoR.whatsappId } });
console.log('----------------> autoR exec after 120 seconds: ', autoR) console.log('----------------> autoR exec after 120 seconds: ', autoR)
let whatsappStatus = ["CONFLICT", let whatsappStatus = ["CONFLICT",
"DEPRECATED_VERSION", "DEPRECATED_VERSION",
"OPENING", "OPENING",
"PROXYBLOCK", "PROXYBLOCK",
@ -74,13 +79,13 @@ export const StartWhatsAppSession = async (whatsapp: Whatsapp, backupSession: bo
if (_whatsapp?.status) { if (_whatsapp?.status) {
if (whatsappStatus.includes(_whatsapp.status)) { if (whatsappStatus.includes(_whatsapp.status)) {
await autoRestore(autoR.whatsappId, 'auto_monit') await autoRestore(autoR.whatsappId, 'auto_monit')
} }
} }
} }