app script doPost รับข้อมูลจาก diaglogflow
function doPost(e) {
var data = JSON.parse(e.postData.contents);
var intentName = data.queryResult.intent.displayName;
if (intentName === 'prodrug_inten') {
var productName = data.queryResult.parameters.product_entity;
var price = lookupPrice(productName);
var response = createResponse(productName, price);
return ContentService.createTextOutput(JSON.stringify(response)).setMimeType(ContentService.MimeType.JSON);
} else {
return ContentService.createTextOutput(JSON.stringify({
fulfillmentText: "ขออภัย ไม่สามารถประมวลผลคำขอนี้ได้"
})).setMimeType(ContentService.MimeType.JSON);
}
}
function lookupPrice(productName) {
// สมมติว่าเราใช้ Google Sheets เป็นฐานข้อมูล
var sheet = SpreadsheetApp.openById('1SFuy-_AAXFeDYxlWAGA-4Ls9pMWe4apWSfe2X3eQkfA').getSheetByName('productinfo');
var data = sheet.getDataRange().getValues();
// Add one line to use BetterLog
Logger = BetterLog.useSpreadsheet('1SFuy-_AAXFeDYxlWAGA-4Ls9pMWe4apWSfe2X3eQkfA');
//Now you can log and it will also log to the spreadsheet
Logger.log(productName);
for (var i = 1; i < data.length; i++) {
if (data[i][1].toLowerCase() === productName.toLowerCase()) {
return data[i][1]+data[i][2]; // สมมติว่าราคาอยู่ในคอลัมน์ที่ 2
}
}
return null; // ถ้าไม่พบสินค้า
}
function createResponse(productName, price) {
var response = {
fulfillmentText: price ? ราคาของ ${productName} คือ ${price} บาท : `ขออภัย ไม่พบข้อมูลราคาของ ${productName}`,
fulfillmentMessages: [
{
text: {
text: [price ? ราคาของ ${productName} คือ ${price} บาท : `ขออภัย ไม่พบข้อมูลราคาของ ${productName}`]
}
}
]
};
return response;
}
ความคิดเห็น
แสดงความคิดเห็น