LINE Messaging API คือเครื่องมือสำคัญที่ช่วยให้นักพัฒนาสามารถสร้างแชทบอท (Chatbot) ที่ทำงานร่วมกับบัญชี LINE Official Account (LINE OA) ได้อย่างมีประสิทธิภาพ คุณสามารถส่งข้อความได้หลากหลายรูปแบบ เช่น ข้อความ รูปภาพ วิดีโอ หรือแม้แต่ Flex Message ที่มีความยืดหยุ่นสูง เพื่อตอบสนองต่อผู้ใช้ หรือส่งข้อความแจ้งเตือนตามต้องการ
หัวใจหลักของ Messaging API คือการสื่อสารผ่าน Webhook ซึ่งเป็นกลไกที่ LINE Platform จะส่งข้อมูลเหตุการณ์ (เช่น การส่งข้อความจากผู้ใช้) ไปยัง URL ที่คุณกำหนดไว้ (Bot Server) และ Bot Server จะประมวลผลและส่งข้อความตอบกลับผ่าน API
🛠️ การเชื่อมต่อกับ Google Apps Script (GAS)
Google Apps Script (GAS) เป็นแพลตฟอร์มที่ยอดเยี่ยมสำหรับการสร้าง Bot Server เนื่องจากใช้งานง่าย ไม่ต้องตั้งเซิร์ฟเวอร์เอง และสามารถเชื่อมต่อกับบริการอื่น ๆ ของ Google ได้อย่างราบรื่น เช่น Google Sheets, Google Forms, หรือ Gemini API
1. การตั้งค่าเบื้องต้น
- สร้าง LINE Official Account และ Channel:
- เข้าสู่ LINE Developers Console เพื่อสร้าง Provider และ Messaging API Channel
- จด Channel Access Token และ Channel Secret ไว้
- สร้าง Google Apps Script:
- ไปที่ Google Drive หรือ Google Sheets
- ไปที่ Extensions (ส่วนขยาย) > Apps Script
- สร้างไฟล์
.gsใหม่
2. โค้ดตัวอย่าง: การรับและตอบกลับข้อความ (Reply Message)
นี่คือตัวอย่างโค้ด GAS สำหรับฟังก์ชันหลักในการรับเหตุการณ์ (Webhook) และส่งข้อความตอบกลับ:
JavaScript
// **แทนที่ด้วย Channel Access Token ของคุณ**
const LINE_CHANNEL_TOKEN = 'YOUR_CHANNEL_ACCESS_TOKEN';
/**
* ฟังก์ชันหลักที่รับ Webhook Event จาก LINE
* @param {object} e - Event object ที่ LINE ส่งมา
*/
function doPost(e) {
// 1. รับข้อมูล Event จาก LINE
const json = JSON.parse(e.postData.contents);
const events = json.events;
// 2. วนลูปประมวลผลทุก Event
events.forEach(event => {
// ตรวจสอบว่าเป็น Event ประเภทข้อความ (message) และเป็นข้อความตัวอักษร (text)
if (event.type === 'message' && event.message.type === 'text') {
const replyToken = event.replyToken;
const userText = event.message.text;
// 3. เตรียมข้อความตอบกลับ (ตัวอย่าง: ตอบกลับด้วยข้อความเดิม)
const replyMessage = 'คุณพิมพ์ว่า: ' + userText;
// 4. ส่งข้อความตอบกลับ
replyToLine(replyToken, replyMessage);
}
});
}
/**
* ฟังก์ชันสำหรับส่งข้อความตอบกลับไปยัง LINE
* @param {string} replyToken - Token สำหรับการตอบกลับ
* @param {string} message - ข้อความที่จะส่งกลับ
*/
function replyToLine(replyToken, message) {
const url = 'https://api.line.me/v2/bot/message/reply';
const headers = {
'Content-Type': 'application/json',
'Authorization': 'Bearer ' + LINE_CHANNEL_TOKEN
};
const payload = {
replyToken: replyToken,
messages: [
{
type: 'text',
text: message
}
]
};
const options = {
'method': 'post',
'headers': headers,
'payload': JSON.stringify(payload)
};
// ส่ง Request ไปยัง LINE Messaging API
UrlFetchApp.fetch(url, options);
}
// **ข้อสำคัญ: ต้อง Deploy เป็น Web App (ดูขั้นตอนถัดไป)**
3. การ Deploy และเชื่อมต่อ Webhook
- Deploy เป็น Web App:
- ใน Apps Script ให้คลิกที่ Deploy (ทำให้ใช้งานได้) > New deployment (การทำให้ใช้งานได้ใหม่)
- เลือก Select type (เลือกประเภท) เป็น Web app
- ตั้งชื่อ (เช่น
LINE-Bot-Reply) - ตั้งค่า Execute as (เรียกใช้ในฐานะ) เป็น Me (your email)
- ตั้งค่า Who has access (ผู้ที่มีสิทธิ์เข้าถึง) เป็น Anyone (ทุกคน)
- คลิก Deploy (ทำให้ใช้งานได้)
- คัดลอก Web app URL ที่ได้มา
- ตั้งค่า Webhook ใน LINE Developers Console:
- กลับไปที่ Channel ของคุณใน LINE Developers Console
- ไปที่แท็บ Messaging API
- ในส่วน Webhook settings ให้วาง Web app URL ที่คัดลอกมาลงในช่อง Webhook URL
- คลิก Verify เพื่อตรวจสอบความถูกต้อง (ควรขึ้นสถานะสำเร็จ)
- เปิดใช้งาน Use webhook
💡 การนำไปใช้ได้จริง
การเชื่อมต่อ LINE Messaging API กับ Google Apps Script สามารถนำไปประยุกต์ใช้ได้หลากหลาย เช่น:
- ระบบแจ้งเตือนอัตโนมัติ: ส่งรายงานยอดขายจาก Google Sheets, แจ้งเตือนเมื่อมีการกรอก Google Form, หรือแจ้งเตือนตามเงื่อนไขที่กำหนด (Push/Multicast Message ต้องใช้ User ID/Group ID)
- Chatbot ง่าย ๆ: สร้างคำสั่งตอบกลับอัตโนมัติจากข้อมูลใน Google Sheets (เช่น ถามราคาสินค้า ตอบสถานะการจัดส่ง)
- การเก็บข้อมูล: เก็บข้อความ รูปภาพ หรือไฟล์ที่ผู้ใช้ส่งเข้ามาใน Google Sheets หรือ Google Drive
- การประมวลผลขั้นสูง: เชื่อมต่อกับ AI เช่น Gemini (ตามตัวอย่างในแหล่งข้อมูล) เพื่อสร้างแชทบอทที่ตอบคำถามได้อย่างชาญฉลาด
วิดีโอนี้จะแสดงขั้นตอนการเปลี่ยนจากการใช้ LINE Notify เป็น LINE Messaging API เพื่อส่งแจ้งเตือนไปยัง LINE Group โดยใช้ Google Apps Script ซึ่งเป็นประโยชน์สำหรับผู้ที่ต้องการอัปเกรดระบบแจ้งเตือน



