mirror of
https://github.com/cheveguerra/bot-whatsapp.git
synced 2026-04-20 20:49:15 +00:00
diaglogflow wit media
This commit is contained in:
@@ -20,6 +20,7 @@ const sessionClient = new dialogflow.SessionsClient(CONFIGURATION);
|
||||
|
||||
// Detect intent method
|
||||
const detectIntent = async (queryText) => {
|
||||
let media = null;
|
||||
const sessionId = nanoid.nanoid()
|
||||
const sessionPath = sessionClient.projectAgentSessionPath(PROJECID, sessionId);
|
||||
const languageCode = process.env.LANGUAGE
|
||||
@@ -37,18 +38,24 @@ const detectIntent = async (queryText) => {
|
||||
const [singleResponse] = responses;
|
||||
const { queryResult } = singleResponse
|
||||
const { intent } = queryResult || { intent: {} }
|
||||
const parseIntent = intent?.displayName || null
|
||||
const parseIntent = intent['displayName'] || null
|
||||
const parsePayload = queryResult['fulfillmentMessages'].find((a) => a.message === 'payload');
|
||||
|
||||
if (parsePayload && parsePayload.payload) {
|
||||
const { fields } = parsePayload.payload
|
||||
media = fields.media.stringValue || null
|
||||
}
|
||||
// const customPayload = parsePayload['payload']
|
||||
|
||||
const parseData = {
|
||||
replyMessage:queryResult.fulfillmentText,
|
||||
media:null,
|
||||
trigger:null
|
||||
replyMessage: queryResult.fulfillmentText,
|
||||
media,
|
||||
trigger: null
|
||||
}
|
||||
|
||||
return parseData
|
||||
}
|
||||
|
||||
const getDataIa = (message = '',cb = () => {}) => {
|
||||
const getDataIa = (message = '', cb = () => { }) => {
|
||||
detectIntent(message).then((res) => {
|
||||
cb(res)
|
||||
})
|
||||
|
||||
@@ -32,19 +32,21 @@ const get = (message) => new Promise((resolve, reject) => {
|
||||
});
|
||||
}
|
||||
|
||||
})
|
||||
|
||||
const getIA = (message) => new Promise((resolve, reject) => {
|
||||
/**
|
||||
* Si usas dialogflow
|
||||
*/
|
||||
if (process.env.DATABASE === 'dialogflow') {
|
||||
if (process.env.DATABASE === 'dialogflow') {
|
||||
let resData = { replyMessage: '', media: null, trigger: null }
|
||||
getDataIa(message,(dt) => {
|
||||
resData = { ...resData, ...{ replyMessage: dt.replyMessage } }
|
||||
resData = { ...resData, ...dt }
|
||||
resolve(resData)
|
||||
})
|
||||
}
|
||||
})
|
||||
|
||||
|
||||
const reply = (step) => new Promise((resolve, reject) => {
|
||||
/**
|
||||
* Si no estas usando un gesto de base de datos
|
||||
@@ -99,4 +101,4 @@ const reply = (step) => new Promise((resolve, reject) => {
|
||||
}
|
||||
})
|
||||
|
||||
module.exports = { get, reply }
|
||||
module.exports = { get, reply, getIA }
|
||||
Reference in New Issue
Block a user