86 lines
2.5 KiB
TypeScript
86 lines
2.5 KiB
TypeScript
|
import Whatsapp from "../models/Whatsapp"
|
||
|
import autoRestore from "./AutoRestore"
|
||
|
import { getRestoreControll } from "./RestoreControll"
|
||
|
|
||
|
let lstAutoRestore: any = []
|
||
|
|
||
|
// Delete a directory and its children
|
||
|
export const restoreMonit = (whatsappId: string | number) => {
|
||
|
|
||
|
try {
|
||
|
|
||
|
let lstRestore: any = getRestoreControll()
|
||
|
|
||
|
console.log('ENTROU NO AUTO RESTORE..................................')
|
||
|
|
||
|
if (Object.keys(lstRestore.filter((e: any) => +e.id == +whatsappId)).length) {
|
||
|
|
||
|
console.log('Restore executed by human whatasappId: ', whatsappId)
|
||
|
|
||
|
}
|
||
|
else {
|
||
|
|
||
|
lstAutoRestore.push({ 'whatsappId': +whatsappId })
|
||
|
|
||
|
setTimeout(async () => {
|
||
|
|
||
|
lstRestore = getRestoreControll()
|
||
|
|
||
|
let count = lstAutoRestore.length
|
||
|
|
||
|
for (let i = 0; i < count; i++) {
|
||
|
|
||
|
let autoR = lstAutoRestore.shift()
|
||
|
|
||
|
console.log('----------------> autoR: ', autoR)
|
||
|
|
||
|
if (autoR && autoR.whatsappId) {
|
||
|
|
||
|
if (Object.keys(lstRestore.filter((e: any) => +e.id == +autoR.whatsappId)).length) {
|
||
|
|
||
|
console.log(' EXECUTING RESTORING autoR: ', autoR)
|
||
|
|
||
|
continue
|
||
|
}
|
||
|
|
||
|
const _whatsapp = await Whatsapp.findOne({ where: { id: autoR.whatsappId } });
|
||
|
|
||
|
console.log('----------------> autoR exec after 180 seconds: ', autoR)
|
||
|
|
||
|
let whatsappStatus = ["CONFLICT",
|
||
|
"DEPRECATED_VERSION",
|
||
|
"OPENING",
|
||
|
"PAIRING",
|
||
|
"PROXYBLOCK",
|
||
|
"SMB_TOS_BLOCK",
|
||
|
"TIMEOUT",
|
||
|
"TOS_BLOCK",
|
||
|
"UNLAUNCHED",
|
||
|
"UNPAIRED",
|
||
|
"UNPAIRED_IDLE"]
|
||
|
|
||
|
if (_whatsapp?.status) {
|
||
|
|
||
|
if (whatsappStatus.includes(_whatsapp.status)) {
|
||
|
|
||
|
await autoRestore(autoR.whatsappId, 'auto_monit')
|
||
|
|
||
|
}
|
||
|
|
||
|
}
|
||
|
|
||
|
}
|
||
|
|
||
|
}
|
||
|
|
||
|
console.log('888888888888888888 ENTROU NO SET TIMEOUT -----------> ')
|
||
|
|
||
|
}, 180000);
|
||
|
|
||
|
}
|
||
|
|
||
|
} catch (error) {
|
||
|
console.log('There was an error on try execute AUTO-RESTORE: ', error)
|
||
|
}
|
||
|
|
||
|
}
|