Ep3-Flex message


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}

ติดต่อสอบถามปัญหาได้เลยครับ

แสดงความคิดเห็น (0)
ใหม่กว่า เก่ากว่า