This commit is contained in:
Leifer Mendez
2022-04-27 21:32:29 +02:00
parent a1bf5ba5c2
commit 10e2b138d3
6 changed files with 193 additions and 137 deletions

View File

@@ -1,9 +1,11 @@
const dialogflow = require('@google-cloud/dialogflow');
const fs = require('fs')
//const nanoid = require('nanoid')
const nanoid = require('nanoid')
/**
* Debes de tener tu archivo con el nombre "chatbot-account.json" en la raíz del proyecto
*/
const KEEP_DIALOG_FLOW = (process.env.KEEP_DIALOG_FLOW === 'true')
let PROJECID;
let CONFIGURATION;
let sessionClient;
@@ -30,7 +32,7 @@ const checkFileCredentials = () => {
// Detect intent method
const detectIntent = async (queryText) => {
let media = null;
const sessionId = 1
const sessionId = KEEP_DIALOG_FLOW ? 1 : nanoid();
const sessionPath = sessionClient.projectAgentSessionPath(PROJECID, sessionId);
const languageCode = process.env.LANGUAGE
const request = {
@@ -54,7 +56,7 @@ const detectIntent = async (queryText) => {
const { fields } = parsePayload.payload
media = fields.media.stringValue || null
}
// const customPayload = parsePayload['payload']
const customPayload = parsePayload['payload']
const parseData = {
replyMessage: queryResult.fulfillmentText,

View File

@@ -51,13 +51,15 @@ saveMessageMysql = ( message, date, trigger, number ) => new Promise((resolve,re
connection.query(
`INSERT INTO ${DATABASE_NAME}.messages `+"( `message`, `date`, `trigger`, `number`)"+` VALUES ('${message}','${date}','${trigger}', '${number}')` , (error, results) => {
if(error) {
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)
})
}
//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 )