mirror of
https://github.com/cheveguerra/bot-whatsapp.git
synced 2026-04-17 19:26:23 +00:00
Se añade localAuth para mantener la session despues de escanear el codigo y se hace un code fix al api rest Co-Authored-By: Leifer Mendez <15802366+leifermendez@users.noreply.github.com>
74 lines
2.6 KiB
JavaScript
74 lines
2.6 KiB
JavaScript
const {connection} = require('../config/mysql')
|
|
const DATABASE_NAME = process.env.SQL_DATABASE || 'db_test'
|
|
|
|
getData = (message = '', callback) => connection.query(
|
|
`SELECT * FROM ${DATABASE_NAME}.initial WHERE keywords LIKE '%${message}%' LIMIT 1`,
|
|
(error, results
|
|
) => {
|
|
const [response] = results
|
|
const key = response?.option_key || null
|
|
callback(key)
|
|
});
|
|
|
|
|
|
getReply = (option_key = '', callback) => connection.query(
|
|
`SELECT * FROM ${DATABASE_NAME}.response WHERE option_key = '${option_key}' LIMIT 1`,
|
|
(error, results
|
|
) => {
|
|
const [response] = results;
|
|
console.log(response)
|
|
const value = {
|
|
replyMessage:response?.replyMessage || '',
|
|
trigger:response?.trigger || '',
|
|
media:response?.media || ''
|
|
|
|
}
|
|
callback(value)
|
|
});
|
|
|
|
getMessages = ( number ) => new Promise((resolve,reejct) => {
|
|
try {
|
|
connection.query(
|
|
`SELECT * FROM ${DATABASE_NAME}.response WHERE number = '${number}'`, (error, results) => {
|
|
if(error) {
|
|
console.log(error)
|
|
}
|
|
const [response] = results;
|
|
console.log(response)
|
|
const value = {
|
|
replyMessage:response?.replyMessage || '',
|
|
trigger:response?.trigger || '',
|
|
media:response?.media || ''
|
|
}
|
|
resolve(value)
|
|
})
|
|
} catch (error) {
|
|
|
|
}
|
|
})
|
|
|
|
saveMessageMysql = ( message, date, trigger, number ) => new Promise((resolve,reejct) => {
|
|
try {
|
|
connection.query(
|
|
`INSERT INTO ${DATABASE_NAME}.messages `+"( `message`, `date`, `trigger`, `number`)"+` VALUES ('${message}','${date}','${trigger}', '${number}')` , (error, results) => {
|
|
if(error) {
|
|
//TODO esta parte es mejor incluirla directamente en el archivo .sql template
|
|
console.log('DEBES DE CREAR LA TABLA DE MESSAGE')
|
|
// if( error.code === 'ER_NO_SUCH_TABLE' ){
|
|
// connection.query( `CREATE TABLE ${DATABASE_NAME}.messages `+"( `date` DATE NOT NULL , `message` VARCHAR(450) NOT NULL , `trigger` VARCHAR(450) NOT NULL , `number` VARCHAR(50) NOT NULL ) ENGINE = InnoDB", async (error, results) => {
|
|
// setTimeout( async () => {
|
|
// return resolve( await this.saveMessageMysql( message, date, trigger, number ) )
|
|
// }, 150)
|
|
// })
|
|
// }
|
|
}
|
|
console.log('Saved')
|
|
console.log( results )
|
|
resolve(results)
|
|
})
|
|
} catch (error) {
|
|
|
|
}
|
|
})
|
|
|
|
module.exports = {getData, getReply, saveMessageMysql} |