39 lines
1.5 KiB
JavaScript
39 lines
1.5 KiB
JavaScript
return {
|
|
async handleIVAWakeupEvent(event, req, session, settings, redis, smStr, channel, eventPayload) {
|
|
try {
|
|
const ivaWakeupText = `<p><br data-mce-bogus="1"></p><p><br data-mce-bogus="1"></p><p>IVA-Wakeup</p>`;
|
|
|
|
if (event.text === ivaWakeupText) {
|
|
const nluSettings = settings.nlu;
|
|
|
|
const result = await axios.post(
|
|
`${nluSettings.apiBaseURL}Model/run/${req.params.workspaceId}/${req.params.branch}/${nluSettings.modelName}`,
|
|
{
|
|
input: "CaseSetup",
|
|
conversationId: session.conversationId,
|
|
settings: nluSettings.settings,
|
|
sessionId: event.sessionId
|
|
}
|
|
);
|
|
|
|
eventPayload.options = result?.data?.options;
|
|
eventPayload.metadata = {
|
|
outputs: result.data?.outputs,
|
|
channel: channel
|
|
};
|
|
eventPayload.input = result.data.answers[0];
|
|
eventPayload.metadata.outputs.disableMessengerInput = true;
|
|
eventPayload.metadata.outputs.datacollect = true;
|
|
|
|
await redis.hSet(smStr, {
|
|
formFlow: "true",
|
|
datacollect: "true",
|
|
sentdata: "false"
|
|
});
|
|
}
|
|
} catch (e) {
|
|
console.info("Error with IVA-Wakeup");
|
|
console.error(e);
|
|
}
|
|
}
|
|
}; |