LINE เป็นหนึ่งใน platform ที่นิยมมากในประเทศไทย ทำให้ผู้คนก็ต่างต้องการทำการตลาดใน platform เป็นจำนวนมาก รวมไปถึงการรวม LINE เข้ากับ application นั่นเอง
ซึ่งวิธีที่จะแนะนำต่อไปนี้ก็คือการต่อแชทบอทไลน์ให้เราได้ข้อมูลผ่านเข้ากับ website หรือ application ของเรา ถ้าเรามีความรู้เรื่อง API ดี ก็จะทำได้ไม่ยาก
อย่างแรกก็ต้องสมัครเพื่อเป็น LINE developer เสียก่อน https://developers.line.biz/en/
จากนั้นก็เข้า console เพื่อสร้าง providers หลังจากสร้างเสร็จก็ทำการสร้าง channel โดยเลือก Messaging API ซึ่งชื่อ channel ก็เป็นชื่อของ บอทเราได้เลย
![LINE Bot กับ Next JS แบบง่ายๆ-1 LINE Bot กับ Next JS แบบง่ายๆ](http://www.frevation.com/wp-content/uploads/2021/10/LINE-Bot-กับ-Next-JS-แบบง่ายๆ-1.png)
จะมี 2 ส่วนที่สำคัญที่เราต้องการคือ
1. channel access token ในหน้า Messaging API
2. webhook URL ที่เราจะเอาไว้ใส่เว็ปที่เราจะทำการรับ request เข้ามา
ส่วนต่อไปที่จะพูดถึงคือ application หรือ เว็ปไซต์ของเรา
ซึ่งเว็ปไซต์ เราจะสร้างโดยใช้ Next JS เพราะมี API อยู่ในตัว
npx create-next-app nextjs
ใน folder api เราจะสร้างไฟล์ line.js ขึ้นมาเพื่อเป็นหน้าเว็ปที่ใช้ในการรับ request เข้ามา
![LINE Bot กับ Next JS แบบง่ายๆ-2 LINE Bot กับ Next JS แบบง่ายๆ](http://www.frevation.com/wp-content/uploads/2021/10/LINE-Bot-กับ-Next-JS-แบบง่ายๆ-2.png)
เราจะสร้าง function reply เพื่อให้บอทสามารถตอบแชทได้
ซึ่ง function นี้ต้องใช้ request
ทำการรัน yarn add request จากนั้นก็สร้าง constant ตามในภาพ
![LINE Bot กับ Next JS แบบง่ายๆ-3 LINE Bot กับ Next JS แบบง่ายๆ](http://www.frevation.com/wp-content/uploads/2021/10/LINE-Bot-กับ-Next-JS-แบบง่ายๆ-3.png)
![LINE Bot กับ Next JS แบบง่ายๆ-4 LINE Bot กับ Next JS แบบง่ายๆ](http://www.frevation.com/wp-content/uploads/2021/10/LINE-Bot-กับ-Next-JS-แบบง่ายๆ-4.png)
นำ channel access token ไปใส่ในไฟล์ .env
![LINE Bot กับ Next JS แบบง่ายๆ-5 LINE Bot กับ Next JS แบบง่ายๆ](http://www.frevation.com/wp-content/uploads/2021/10/LINE-Bot-กับ-Next-JS-แบบง่ายๆ-5.png)
เพิ่มบอทเป็นเพื่อนด้วย Bot basic ID ใน Messaging API
![LINE Bot กับ Next JS แบบง่ายๆ-6 LINE Bot กับ Next JS แบบง่ายๆ](http://www.frevation.com/wp-content/uploads/2021/10/LINE-Bot-กับ-Next-JS-แบบง่ายๆ-6.png)
เราจะใช้ ngrok ในการสร้าง public url เพราะใช้ localhost เป็น webhook ไม่ได้
yarn add ngrok
จากนั้น
ngrok http 3000
เราจะได้ public url ในภาพ
![LINE Bot กับ Next JS แบบง่ายๆ-7 LINE Bot กับ Next JS แบบง่ายๆ](http://www.frevation.com/wp-content/uploads/2021/10/LINE-Bot-กับ-Next-JS-แบบง่ายๆ-7.png)
เอาไปใส่ใน webhook และต่อท้ายด้วย /api/line
![LINE Bot กับ Next JS แบบง่ายๆ-8 LINE Bot กับ Next JS แบบง่ายๆ](http://www.frevation.com/wp-content/uploads/2021/10/LINE-Bot-กับ-Next-JS-แบบง่ายๆ-8.png)
ก่อนกด verify อย่าลืม run app ของเราด้วย yarn dev
![LINE Bot กับ Next JS แบบง่ายๆ-9 LINE Bot กับ Next JS แบบง่ายๆ](http://www.frevation.com/wp-content/uploads/2021/10/LINE-Bot-กับ-Next-JS-แบบง่ายๆ-9.png)
กด verify แรกๆอาจจะมี timeout error ลองกด verify ใหม่
![LINE Bot กับ Next JS แบบง่ายๆ-10 LINE Bot กับ Next JS แบบง่ายๆ](http://www.frevation.com/wp-content/uploads/2021/10/LINE-Bot-กับ-Next-JS-แบบง่ายๆ-10.png)
ทีนี้เราก็สามารถพิมพ์แชทกับบอทได้
![LINE Bot กับ Next JS แบบง่ายๆ-11 ทีนี้เราก็สามารถพิมพ์แชทกับบอทได้](http://www.frevation.com/wp-content/uploads/2021/10/LINE-Bot-กับ-Next-JS-แบบง่ายๆ-11.png)
ถ้าเราไม่อยากให้บอทเราตอบข้อความ “ขอบคุณที่ส่งข้อความ…” ของไลน์ ก็ทำการ disable Auto-response ไป
![LINE Bot กับ Next JS แบบง่ายๆ-12 ถ้าเราไม่อยากให้บอทเราตอบข้อความ “ขอบคุณที่ส่งข้อความ...” ของไลน์ ก็ทำการ disable Auto-response ไป](http://www.frevation.com/wp-content/uploads/2021/10/LINE-Bot-กับ-Next-JS-แบบง่ายๆ-12.png)
เราสามารถทำให้บอทตอบข้อความทีละหลายข้อความได้ด้วยการทำเป็น array
![LINE Bot กับ Next JS แบบง่ายๆ-13 เราสามารถทำให้บอทตอบข้อความทีละหลายข้อความได้ด้วยการทำเป็น array](http://www.frevation.com/wp-content/uploads/2021/10/LINE-Bot-กับ-Next-JS-แบบง่ายๆ-13.png)
![LINE Bot กับ Next JS แบบง่ายๆ-14 เราสามารถทำให้บอทตอบข้อความทีละหลายข้อความได้ด้วยการทำเป็น array](http://www.frevation.com/wp-content/uploads/2021/10/LINE-Bot-กับ-Next-JS-แบบง่ายๆ-14.png)
นี่เป็นตัวอย่างแบบง่ายๆ ระหว่าง LINE กับ Next JS เราสามารถสร้าง condition อย่างอื่นก็ได้เช่นกัน สามารถไปลองเล่นและปรับแต่งกันดูได้
ผู้เขียน ธนาพัฒน์ ลิมป์เติมทรัพย์
วันที่ 8 ตุลาคม พ.ศ.2564