function sendMessageToUser(replyToken, data) {
// สร้างโครงสร้าง Flex Message
var flexMessage = {
type: 'flex',
altText: 'ผลการเรียน',
contents: {
type: 'bubble',
body: {
type: 'box',
layout: 'vertical',
contents: [
{
type: 'text',
text: '📝 ผลการเรียนของ',
weight: 'bold',
size: 'md'
},
{
type: 'separator',
margin: 'md'
}
]
}
},
quickReply: { // เพิ่ม quickReply object ที่จะถูกส่งกลับพร้อมกับ Flex Message
items: [
{
type: 'action', // ประเภทของ QuickReply
imageUrl: 'https://cdn-icons-png.flaticon.com/128/2625/2625610.png',
action: {
type: 'message', // ประเภท action เป็นข้อความ
label: 'เลขบัตรทดสอบ',
text: '1111111111111'
}
},
{
type: 'action', // ประเภทของ QuickReply
imageUrl: 'https://cdn-icons-png.flaticon.com/128/2625/2625610.png',
action: {
type: 'message', // ประเภท action เป็นข้อความ
label: 'เลขบัตรทดสอบ2',
text: '2222222222222'
}
},
{
type: 'action', // ประเภทของ QuickReply
imageUrl: 'https://cdn-icons-png.flaticon.com/128/2625/2625610.png',
action: {
type: 'message', // ประเภท action เป็นข้อความ
label: 'เลขบัตรทดสอบ3',
text: '3333333333333'
}
},
{
type: 'action',
imageUrl: 'https://cdn-icons-png.flaticon.com/128/4961/4961759.png',
action: {
type: 'uri',
label: 'ติดต่อเรา',
uri: 'https://examblog64.krooluang.com/2021/09/contact.html'
}
}
]
}
};
// ดึงวิชาและเกรดจากข้อมูลที่พบ และเพิ่มลงใน Flex Message
var subjects = Object.keys(data).slice(0); // ดึงข้อมูลวิชาทั้งหมด
subjects.forEach(function (subject) {
if (data[subject] !== "") {
var subjectGradeBox = {
type: 'box',
layout: 'horizontal',
contents: [
{
type: 'text',
text: subject,
size: 'sm',
color: '#555555',
flex: 0
},
{
type: 'text',
text: data[subject],
size: 'sm',
color: '#111111',
align: 'end'
}
]
};
flexMessage.contents.body.contents.push(subjectGradeBox);
}
});
// ส่งข้อความตอบกลับไปยังผู้ใช้
sendFlexMessage(replyToken, flexMessage);
}
// ฟังก์ชันส่ง Flex Message
function sendFlexMessage(replyToken, flexMessage) {
var messageData = {
replyToken: replyToken,
messages: [flexMessage]
};
UrlFetchApp.fetch('https://api.line.me/v2/bot/message/reply', {
method: 'post',
headers: {
'Content-Type': 'application/json',
'Authorization': 'Bearer ' + token
},
payload: JSON.stringify(messageData)
});
}
{fullwidth}