ปลดล็อกศักยภาพ LINE Bot: 10 ตัวอย่าง Rich Menu สุดสร้างสรรค์พร้อมแนวทางการสร้าง
ยกระดับประสบการณ์ผู้ใช้และขับเคลื่อนธุรกิจของคุณด้วย Rich Menu ที่ออกแบบมาอย่างชาญฉลาด
Rich Menu ใน LINE Bot เป็นเครื่องมืออันทรงพลังที่ช่วยให้ผู้ใช้สามารถโต้ตอบกับบัญชี LINE Official Account (OA) ของคุณได้อย่างง่ายดายและรวดเร็ว เปรียบเสมือนหน้าต่างหลักที่นำทางผู้ใช้ไปยังข้อมูล สินค้า บริการ หรือฟังก์ชันต่างๆ ที่คุณต้องการนำเสนอ การออกแบบ Rich Menu ที่ดีไม่เพียงแต่ช่วยเพิ่มความสวยงาม แต่ยังช่วยเพิ่มการมีส่วนร่วม (Engagement) และลดภาระงานของผู้ดูแลระบบได้อย่างมีนัยสำคัญ บทความนี้จะนำเสนอ 10 ตัวอย่าง Rich Menu ที่หลากหลาย พร้อมแนวทางการสร้างเพื่อให้คุณสามารถนำไปปรับใช้กับธุรกิจของคุณได้อย่างเต็มประสิทธิภาพ
ไฮไลท์สำคัญของ Rich Menu
- ยกระดับประสบการณ์ผู้ใช้ (UX): Rich Menu ช่วยให้ผู้ใช้เข้าถึงฟังก์ชันหลักได้อย่างรวดเร็วผ่านอินเทอร์เฟซที่สวยงามและใช้งานง่าย
- เพิ่มการมีส่วนร่วม: การออกแบบที่น่าสนใจและปุ่ม Call-to-Action ที่ชัดเจนกระตุ้นให้ผู้ใช้โต้ตอบกับบอทมากขึ้น
- ความยืดหยุ่นสูง: สามารถปรับแต่ง Rich Menu ให้แตกต่างกันสำหรับผู้ใช้แต่ละราย (Per-user Rich Menu) หรือตั้งเป็นเมนูเริ่มต้น (Default Rich Menu) และยังสามารถสร้างเมนูที่สลับการแสดงผลได้
Rich Menu คืออะไร? และสร้างได้อย่างไร?
Rich Menu คือเมนูปรับแต่งได้ที่แสดงผลอยู่บริเวณด้านล่างของหน้าจอแชทใน LINE Official Account ทำหน้าที่เป็นทางลัดให้ผู้ใช้สามารถเข้าถึงเนื้อหาหรือบริการต่างๆ ได้ทันที เช่น การนำทางไปยังเว็บไซต์, การส่งข้อความที่กำหนดไว้ล่วงหน้า, การเปิดหน้า LIFF (LINE Front-end Framework) หรือแม้กระทั่งการสลับไปยัง Rich Menu อื่นๆ
องค์ประกอบหลักของ Rich Menu
ตัวอย่างโครงสร้าง Template ของ Rich Menu แสดงพื้นที่ที่สามารถกำหนดการกระทำได้
- รูปภาพพื้นหลัง (Background Image): รูปภาพที่ใช้เป็นพื้นหลังของเมนู ควรออกแบบให้สวยงาม สื่อถึงแบรนด์ และสอดคล้องกับปุ่มต่างๆ ขนาดมาตรฐานที่แนะนำคือ 2500x1686 พิกเซล หรือ 2500x843 พิกเซล และรองรับไฟล์ PNG หรือ JPEG
- พื้นที่ที่กดได้ (Tappable Areas): สามารถกำหนดพื้นที่บนรูปภาพได้สูงสุด 20 พื้นที่ต่อหนึ่ง Rich Menu แต่ละพื้นที่จะมีการกระทำ (Action) ที่แตกต่างกันเมื่อผู้ใช้แตะ
- การกระทำ (Actions): ประเภทของการกระทำที่สามารถกำหนดได้ เช่น:
- Message Action: ส่งข้อความที่กำหนดไว้ไปยังบอท
- URI Action: เปิด URL ที่ระบุ (เช่น เว็บไซต์, หน้า LIFF)
- Postback Action: ส่งข้อมูลที่กำหนดไว้ (payload) ไปยังเซิร์ฟเวอร์ของบอทเพื่อประมวลผล
- Datetime Picker Action: เปิดหน้าต่างให้ผู้ใช้เลือกวันที่และเวลา
- Camera Action: เปิดกล้องถ่ายรูป
- Camera Roll Action: เปิดคลังภาพในเครื่องของผู้ใช้
- Location Action: เปิดหน้าต่างให้ผู้ใช้แชร์ตำแหน่งปัจจุบัน
- Rich Menu Switch Action: สลับไปแสดง Rich Menu อื่นที่กำหนดไว้
- แถบเมนู (Chat Bar Text): ข้อความที่แสดงบนแถบเล็กๆ ด้านล่างหน้าจอแชทเพื่อให้ผู้ใช้แตะเพื่อเปิด/ปิด Rich Menu
วิธีการสร้าง Rich Menu
การสร้าง Rich Menu สามารถทำได้สองวิธีหลัก:
- ผ่าน LINE Official Account Manager: เป็นวิธีที่ใช้ GUI (Graphic User Interface) เหมาะสำหรับผู้ที่ไม่ต้องการเขียนโค้ด สามารถเลือกเทมเพลตที่กำหนดไว้ล่วงหน้า หรืออัปโหลดรูปภาพและกำหนดพื้นที่กดได้โดยตรงจากแพลตฟอร์ม ข้อจำกัดคือ Rich Menu ที่สร้างด้วยวิธีนี้จะไม่สามารถจัดการผ่าน API ได้
- ผ่าน Messaging API: วิธีนี้ให้ความยืดหยุ่นสูงสุด เหมาะสำหรับนักพัฒนาที่ต้องการสร้าง Rich Menu ที่ซับซ้อน จัดการ Rich Menu จำนวนมาก หรือต้องการสร้าง Per-user Rich Menu และการสลับเมนูแบบไดนามิก จำเป็นต้องใช้การเรียก API endpoints ต่างๆ เช่น:
Create rich menu: สร้าง Object ของ Rich Menu พร้อมกำหนดคุณสมบัติต่างๆUpload rich menu image: อัปโหลดรูปภาพสำหรับ Rich Menu ที่สร้างขึ้นSet default rich menu: กำหนด Rich Menu ให้เป็นเมนูเริ่มต้นสำหรับผู้ใช้ทุกคนLink rich menu to user: กำหนด Rich Menu เฉพาะสำหรับผู้ใช้รายบุคคลGet rich menu list: ดึงรายการ Rich Menu ทั้งหมดที่สร้างผ่าน APIDelete rich menu: ลบ Rich Menu ที่ไม่ต้องการใช้งาน
เครื่องมืออย่าง Postman หรือ LINE Bot Designer ก็สามารถช่วยในกระบวนการสร้างและทดสอบ Rich Menu ผ่าน API ได้เช่นกัน
วิดีโอแนะนำวิธีการสร้าง Rich Menu หลายอันใน LINE OA โดยใช้ Messaging API ซึ่งแสดงให้เห็นถึงความสามารถในการจัดการเมนูที่หลากหลาย
การเปรียบเทียบวิธีการสร้าง Rich Menu
การเลือกวิธีการสร้าง Rich Menu ขึ้นอยู่กับความต้องการและทรัพยากรทางเทคนิคของคุณ แผนภูมิเรดาร์ด้านล่างนี้แสดงการเปรียบเทียบระหว่างการใช้ LINE Official Account Manager และ Messaging API ในมิติต่างๆ:
จากแผนภูมิ จะเห็นว่า LINE Official Account Manager นั้นตั้งค่าได้ง่ายกว่าและมีความซับซ้อนทางเทคนิคน้อยกว่า แต่ Messaging API ให้ความยืดหยุ่นในการปรับแต่ง การจัดการเนื้อหาแบบไดนามิก และมีศักยภาพในการสร้างการมีส่วนร่วมของผู้ใช้ได้สูงกว่า
10 ตัวอย่าง Rich Menu สำหรับ LINE Bot ของคุณ
ต่อไปนี้คือ 10 ตัวอย่าง Rich Menu ที่ออกแบบมาสำหรับธุรกิจและวัตถุประสงค์ที่แตกต่างกัน คุณสามารถนำแนวคิดเหล่านี้ไปปรับใช้หรือเป็นแรงบันดาลใจในการสร้าง Rich Menu ของคุณเองได้
ตัวอย่างการออกแบบ Rich Menu ที่หลากหลาย แสดงให้เห็นถึงความเป็นไปได้ในการสร้างสรรค์
ตารางสรุป 10 ตัวอย่าง Rich Menu
ตารางนี้สรุปแนวคิด Rich Menu ทั้ง 10 แบบ พร้อมวัตถุประสงค์หลักและตัวอย่างปุ่มเพื่อให้เห็นภาพรวมชัดเจนยิ่งขึ้น
| ชื่อตัวอย่าง Rich Menu | วัตถุประสงค์หลัก | ตัวอย่างปุ่ม/การกระทำ |
|---|---|---|
| 1. เมนูหลักร้านค้าออนไลน์ | นำเสนอสินค้าและโปรโมชั่น | สินค้าใหม่, โปรโมชั่น, หมวดหมู่สินค้า, ติดต่อเรา, วิธีการสั่งซื้อ, ตะกร้าสินค้า |
| 2. เมนูร้านอาหาร/คาเฟ่ | อำนวยความสะดวกในการสั่งอาหารและจอง | ดูเมนู, สั่งเดลิเวอรี่, จองโต๊ะ, โปรโมชั่นวันนี้, ที่ตั้งร้าน, รีวิว |
| 3. เมนูบริการลูกค้า | ให้ข้อมูลช่วยเหลือและแก้ไขปัญหา | คำถามที่พบบ่อย (FAQ), แจ้งปัญหา, ติดต่อเจ้าหน้าที่, ตรวจสอบสถานะคำร้อง, คู่มือการใช้งาน |
| 4. เมนูข่าวสาร/บทความ | นำเสนอเนื้อหาและอัปเดตข้อมูล | บทความล่าสุด, หมวดหมู่ (เช่น เทคโนโลยี, สุขภาพ), ค้นหาบทความ, สมัครรับข่าวสาร, บทความยอดนิยม |
| 5. เมนูสถาบันการศึกษา/คอร์สเรียน | ให้ข้อมูลคอร์สเรียนและอำนวยความสะดวกผู้เรียน | คอร์สเรียนทั้งหมด, ตารางเรียน, สมัครเรียน, แหล่งข้อมูล/ดาวน์โหลด, ติดต่ออาจารย์, ผลการเรียน |
| 6. เมนูธุรกิจท่องเที่ยว | นำเสนอแพ็คเกจและโปรโมชั่นท่องเที่ยว | ค้นหาทริป/โรงแรม, โปรโมชั่นพิเศษ, แนะนำสถานที่, จองตั๋ว, แผนที่ท่องเที่ยว, รีวิวจากลูกค้า |
| 7. เมนูคลินิก/โรงพยาบาล | ให้ข้อมูลบริการและนัดหมาย | บริการของเรา, นัดหมายแพทย์, ตรวจสอบผลตรวจ, ข้อมูลสุขภาพ, แพ็คเกจตรวจสุขภาพ, ติดต่อฉุกเฉิน |
| 8. เมนูสำหรับอีเว้นท์/กิจกรรม | ประชาสัมพันธ์และจัดการผู้เข้าร่วม | รายละเอียดงาน, ลงทะเบียน, กำหนดการ, แผนที่สถานที่, ผู้สนับสนุน, ติดต่อผู้จัด |
| 9. เมนูโปรแกรมสมาชิก | จัดการสิทธิประโยชน์สมาชิก | ตรวจสอบคะแนน, แลกของรางวัล, สิทธิพิเศษสมาชิก, แก้ไขข้อมูลส่วนตัว, ประวัติการใช้งาน |
| 10. เมนูแบบสลับหน้า (Multi-Page/Tabbed) | จัดระเบียบข้อมูลจำนวนมาก | หน้าหลัก (สลับไปหน้า 1), บริการ (สลับไปหน้า 2), เกี่ยวกับเรา (สลับไปหน้า 3), กลับเมนูหลัก |
1. เมนูหลักร้านค้าออนไลน์
วัตถุประสงค์: ช่วยให้ลูกค้าค้นหาสินค้า, ดูโปรโมชั่น, และติดต่อร้านค้าได้อย่างง่ายดาย
ตัวอย่างปุ่มและการกระทำ:
- สินค้ามาใหม่: Message Action ส่งคำว่า "สินค้าใหม่" หรือ Postback Action เพื่อแสดงรายการสินค้าใหม่
- โปรโมชั่น: URI Action เปิดหน้าเว็บโปรโมชั่น หรือ Message Action "ดูโปรโมชั่น"
- หมวดหมู่สินค้า: Postback Action เพื่อแสดงหมวดหมู่ หรือสลับไปยัง Rich Menu หมวดหมู่
- ติดต่อเรา: Message Action "ติดต่อเจ้าหน้าที่" หรือแสดงข้อมูลติดต่อ
- วิธีการสั่งซื้อ: URI Action เปิดหน้าเว็บอธิบายวิธีการสั่งซื้อ
- ตะกร้าสินค้า: URI Action เปิดหน้า LIFF สำหรับตะกร้าสินค้า
2. เมนูร้านอาหาร/คาเฟ่
วัตถุประสงค์: อำนวยความสะดวกให้ลูกค้าในการดูเมนู, สั่งอาหาร, จองโต๊ะ และรับทราบโปรโมชั่น
ตัวอย่างปุ่มและการกระทำ:
- ดูเมนูทั้งหมด: URI Action เปิดหน้า LIFF แสดงเมนูอาหาร หรือ Postback Action แสดง Flex Message เมนู
- สั่งเดลิเวอรี่: URI Action เชื่อมต่อไปยังแพลตฟอร์มสั่งอาหาร
- จองโต๊ะ: Datetime Picker Action ร่วมกับ Postback เพื่อส่งข้อมูลการจอง
- โปรโมชั่นประจำวัน: Message Action "โปรวันนี้"
- ที่ตั้งร้าน: Location Action เพื่อแชร์ตำแหน่งร้าน
3. เมนูบริการลูกค้า
วัตถุประสงค์: ให้ข้อมูลช่วยเหลือเบื้องต้น ลดจำนวนคำถามซ้ำๆ และเชื่อมต่อผู้ใช้กับเจ้าหน้าที่เมื่อจำเป็น
ตัวอย่างปุ่มและการกระทำ:
- คำถามที่พบบ่อย (FAQ): Postback Action แสดง Flex Message ที่มี FAQ หรือ URI Action เปิดหน้า FAQ
- แจ้งปัญหาการใช้งาน: Postback Action เริ่มขั้นตอนการแจ้งปัญหา
- ติดต่อเจ้าหน้าที่: Message Action "ต้องการคุยกับแอดมิน"
- ตรวจสอบสถานะ: URI Action เปิดหน้า LIFF สำหรับตรวจสอบสถานะ (เช่น สถานะการสั่งซื้อ, การเคลม)
ตัวอย่างโครงสร้าง Rich Menu ที่มีการแบ่งพื้นที่ปุ่มต่างๆ อย่างชัดเจน ช่วยให้ผู้ใช้เข้าใจและใช้งานได้ง่าย
4. เมนูข่าวสาร/บทความ (สำหรับ Blog หรือ Content Creator)
วัตถุประสงค์: นำเสนอเนื้อหาล่าสุด, จัดหมวดหมู่บทความให้ค้นหาง่าย และกระตุ้นการติดตาม
ตัวอย่างปุ่มและการกระทำ:
- บทความล่าสุด: Postback Action แสดง Carousel ของบทความล่าสุด
- หมวดหมู่บทความ: Rich Menu Switch Action สลับไปยังเมนูที่แสดงหมวดหมู่ต่างๆ
- ค้นหาบทความ: Message Action เพื่อให้ผู้ใช้พิมพ์คำค้นหา
- ติดตามเรา: URI Action ไปยังช่องทาง Social Media อื่นๆ
5. เมนูสถาบันการศึกษา/คอร์สเรียนออนไลน์
วัตถุประสงค์: ให้ข้อมูลเกี่ยวกับคอร์สเรียน, ตารางสอน และอำนวยความสะดวกให้นักเรียน/ผู้สนใจ
ตัวอย่างปุ่มและการกระทำ:
- คอร์สเรียนทั้งหมด: URI Action เปิดหน้าเว็บรายการคอร์ส หรือ Postback แสดง Flex Message
- ตารางเรียน: Postback Action แสดงตารางเรียนส่วนตัว (ถ้ามีการ login)
- สมัครเรียน: URI Action ไปยังหน้าสมัครเรียน
- แหล่งข้อมูล/ดาวน์โหลด: URI Action ไปยังหน้า LIFF ที่มีเอกสารประกอบการเรียน
6. เมนูธุรกิจท่องเที่ยว
วัตถุประสงค์: นำเสนอแพ็คเกจทัวร์, โปรโมชั่น, และช่วยในการวางแผนการเดินทาง
ตัวอย่างปุ่มและการกระทำ:
- ค้นหาแพ็คเกจทัวร์: Postback Action เริ่มกระบวนการค้นหา (เช่น ถามปลายทาง, งบประมาณ)
- โปรโมชั่นพิเศษ: Message Action "โปรท่องเที่ยว"
- แนะนำสถานที่ท่องเที่ยว: Postback Action แสดง Carousel ของสถานที่น่าสนใจ
- จองตั๋วเครื่องบิน/ที่พัก: URI Action เชื่อมต่อไปยังระบบจอง
7. เมนูคลินิกเสริมความงาม/โรงพยาบาล
วัตถุประสงค์: ให้ข้อมูลบริการ, อำนวยความสะดวกในการนัดหมาย และให้ข้อมูลสุขภาพเบื้องต้น
ตัวอย่างปุ่มและการกระทำ:
- บริการของเรา: Postback Action แสดงรายการบริการ
- นัดหมายแพทย์/ปรึกษา: Datetime Picker Action ร่วมกับ Postback เพื่อเลือกวันเวลา
- ตรวจสอบผลตรวจ (Lab): URI Action ไปยังหน้า LIFF สำหรับดูผล (ต้องมีการยืนยันตัวตน)
- บทความสุขภาพ: URI Action ไปยัง Blog หรือส่วนบทความของเว็บไซต์
8. เมนูสำหรับอีเว้นท์/กิจกรรม
วัตถุประสงค์: ประชาสัมพันธ์งาน, จัดการการลงทะเบียน และให้ข้อมูลที่จำเป็นแก่ผู้เข้าร่วม
ตัวอย่างปุ่มและการกระทำ:
- รายละเอียดงาน: Postback Action แสดงข้อมูลสำคัญของอีเว้นท์
- ลงทะเบียนเข้าร่วม: URI Action ไปยังหน้าลงทะเบียน
- กำหนดการ (Agenda): Postback Action แสดงตารางเวลาของงาน
- แผนที่สถานที่จัดงาน: Location Action แสดงตำแหน่งบนแผนที่
9. เมนูโปรแกรมสมาชิก (Loyalty Program)
วัตถุประสงค์: เพิ่มความภักดีของลูกค้าโดยให้พวกเขาสามารถเข้าถึงสิทธิประโยชน์และจัดการบัญชีสมาชิกได้ง่าย
ตัวอย่างปุ่มและการกระทำ:
- ตรวจสอบคะแนนสะสม: Postback Action (ต้องมีการเชื่อมต่อข้อมูลสมาชิก)
- แลกของรางวัล: URI Action ไปยังหน้า LIFF สำหรับแคตตาล็อกของรางวัล
- สิทธิพิเศษสำหรับสมาชิก: Message Action "ดูสิทธิพิเศษ"
- แก้ไขข้อมูลส่วนตัว: URI Action ไปยังหน้าโปรไฟล์ผู้ใช้
10. เมนูแบบสลับหน้า (Multi-Page/Tabbed Menu)
วัตถุประสงค์: จัดระเบียบข้อมูลจำนวนมากให้เข้าถึงง่ายโดยไม่ทำให้ Rich Menu ดูรกจนเกินไป
ตัวอย่างปุ่มและการกระทำ:
- เมนูหลัก (แสดงปุ่มไป หน้า 1, หน้า 2, เกี่ยวกับเรา):
- ปุ่ม "บริการ": Rich Menu Switch Action สลับไปยัง Rich Menu บริการ
- ปุ่ม "โปรโมชั่น": Rich Menu Switch Action สลับไปยัง Rich Menu โปรโมชั่น
- ปุ่ม "ติดต่อเรา": Rich Menu Switch Action สลับไปยัง Rich Menu ติดต่อ
- Rich Menu บริการ (ตัวอย่างหน้าย่อย):
- ปุ่ม "บริการ A": Postback Action สำหรับบริการ A
- ปุ่ม "บริการ B": Postback Action สำหรับบริการ B
- ปุ่ม "กลับเมนูหลัก": Rich Menu Switch Action สลับกลับไปยัง เมนูหลัก
การใช้ Rich Menu Switch Action ช่วยให้คุณสร้างประสบการณ์ผู้ใช้ที่เหมือนกับการใช้งานแอปพลิเคชันที่มีหลายแท็บหรือหลายหน้าได้
โครงสร้างและองค์ประกอบของ Rich Menu Mindmap
Mindmap นี้จะช่วยให้คุณเห็นภาพรวมของโครงสร้าง องค์ประกอบ และความเป็นไปได้ต่างๆ ของ Rich Menu ใน LINE Bot ซึ่งสามารถนำไปประยุกต์ใช้ในการออกแบบเมนูของคุณได้อย่างมีประสิทธิภาพ
ขนาด: 2500x1686, 2500x843 px
ประเภท: PNG, JPEG"] id1b["พื้นที่กดได้ (Tappable Areas)
สูงสุด 20 พื้นที่"] id1c["การกระทำ (Actions)"] id1c1["Message Action"] id1c2["URI Action (URL, LIFF)"] id1c3["Postback Action"] id1c4["Datetime Picker Action"] id1c5["Camera Action"] id1c6["Camera Roll Action"] id1c7["Location Action"] id1c8["Rich Menu Switch Action"] id1d["แถบเมนู (Chat Bar Text)"] id2["วิธีการสร้าง (Creation Methods)"] id2a["LINE Official Account Manager
(GUI, ไม่ต้องเขียนโค้ด)"] id2b["Messaging API
(ยืดหยุ่นสูง, สำหรับนักพัฒนา)"] id2b1["Create rich menu"] id2b2["Upload rich menu image"] id2b3["Set default/Link to user"] id3["การแสดงผล (Display Options)"] id3a["เมนูเริ่มต้น (Default Rich Menu)"] id3b["เมนูเฉพาะผู้ใช้ (Per-user Rich Menu)"] id3c["การสลับเมนู (Switching Menus)"] id4["ประโยชน์ (Benefits)"] id4a["เพิ่มการมีส่วนร่วม (User Engagement)"] id4b["นำทางผู้ใช้ (Easy Navigation)"] id4c["ลดภาระงาน Admin (Automation)"] id4d["ส่งเสริมการตลาด (Marketing Tool)"] id4e["ปรับปรุงประสบการณ์ผู้ใช้ (Improved UX)"]
Mindmap นี้สรุปหัวใจสำคัญของ Rich Menu ตั้งแต่องค์ประกอบพื้นฐาน วิธีการสร้าง ไปจนถึงประโยชน์ที่ธุรกิจจะได้รับ การทำความเข้าใจภาพรวมนี้จะช่วยให้การวางแผนและออกแบบ Rich Menu ของคุณตรงเป้าหมายและตอบโจทย์ผู้ใช้งานได้ดียิ่งขึ้น
ตัวอย่างโค้ด Python สำหรับสร้าง Rich Menu (ผ่าน Messaging API)
สำหรับนักพัฒนาที่ต้องการสร้าง Rich Menu ผ่าน Messaging API, Python SDK ของ LINE เป็นเครื่องมือที่ช่วยให้การทำงานง่ายขึ้น ด้านล่างนี้เป็นตัวอย่างโค้ดเบื้องต้นในการสร้าง Rich Menu และอัปโหลดรูปภาพ (แนวคิด):
from linebot.v3.messaging import (
Configuration,
ApiClient,
MessagingApi,
RichMenuRequest,
RichMenuArea,
RichMenuBounds,
MessageAction,
URIAction,
PostbackAction,
RichMenuSize
)
from linebot.v3.messaging.models import CreateRichMenuAliasRequest
# กำหนดค่า Configuration (แทนที่ด้วย Channel Access Token ของคุณ)
configuration = Configuration(access_token='YOUR_CHANNEL_ACCESS_TOKEN')
def create_example_rich_menu():
with ApiClient(configuration) as api_client:
line_bot_api = MessagingApi(api_client)
# 1. สร้าง Rich Menu Object
rich_menu_to_create = RichMenuRequest(
size=RichMenuSize(width=2500, height=1686),
selected=False,
name="My Awesome Rich Menu",
chat_bar_text="เปิดเมนู",
areas=[
RichMenuArea(
bounds=RichMenuBounds(x=0, y=0, width=833, height=843),
action=MessageAction(label="ปุ่ม 1", text="คุณกดปุ่มที่ 1")
),
RichMenuArea(
bounds=RichMenuBounds(x=833, y=0, width=833, height=843),
action=URIAction(label="เว็บไซต์", uri="https://example.com")
),
RichMenuArea(
bounds=RichMenuBounds(x=1666, y=0, width=834, height=843),
action=PostbackAction(label="ส่งข้อมูล", data="action=show_info&item_id=123", display_text="กำลังแสดงข้อมูล")
)
# สามารถเพิ่ม Area อื่นๆ ได้ตามต้องการ (สูงสุด 20 areas)
]
)
try:
rich_menu_id_response = line_bot_api.create_rich_menu(rich_menu_request=rich_menu_to_create)
rich_menu_id = rich_menu_id_response.rich_menu_id
print(f"Rich Menu Created. ID: {rich_menu_id}")
# 2. อัปโหลดรูปภาพสำหรับ Rich Menu (ต้องเตรียมไฟล์รูปภาพไว้ เช่น 'richmenu_image.png')
with open('path/to/your/richmenu_image.png', 'rb') as f:
line_bot_api.set_rich_menu_image(rich_menu_id, body=f.read(), _headers={'Content-Type': 'image/png'})
print(f"Image uploaded for Rich Menu ID: {rich_menu_id}")
# 3. (ทางเลือก) ตั้งเป็น Default Rich Menu
# line_bot_api.set_default_rich_menu(rich_menu_id)
# print(f"Rich Menu ID: {rich_menu_id} set as default.")
# 4. (ทางเลือก) สร้าง Alias สำหรับ Rich Menu (ถ้าต้องการ)
# alias_request = CreateRichMenuAliasRequest(rich_menu_alias_id="my-menu-alias", rich_menu_id=rich_menu_id)
# line_bot_api.create_rich_menu_alias(create_rich_menu_alias_request=alias_request)
# print(f"Alias 'my-menu-alias' created for Rich Menu ID: {rich_menu_id}")
return rich_menu_id
except Exception as e:
print(f"Error creating Rich Menu: {e}")
return None
if __name__ == "__main__":
created_rich_menu_id = create_example_rich_menu()
# คุณสามารถใช้ created_rich_menu_id นี้เพื่อ link ไปยัง user หรือตั้งเป็น default ต่อไป
หมายเหตุ:
- คุณต้องติดตั้ง LINE Bot SDK for Python:
pip install line-bot-sdk(สำหรับ v3) - แทนที่
'YOUR_CHANNEL_ACCESS_TOKEN'ด้วย Channel Access Token ที่ถูกต้องของคุณ - เตรียมไฟล์รูปภาพ
'path/to/your/richmenu_image.png'ให้มีขนาดและรูปแบบตามที่ LINE กำหนด - โค้ดนี้เป็นเพียงตัวอย่างโครงสร้างพื้นฐาน อาจต้องปรับแก้รายละเอียดตาม SDK เวอร์ชันล่าสุดและ Use case ของคุณ
คำถามที่พบบ่อย (FAQ)
คำแนะนำเพิ่มเติม
- เรียนรู้วิธีออกแบบ Rich Menu ให้น่าสนใจและใช้งานง่ายสำหรับ LINE Bot เพื่อเพิ่มประสิทธิภาพสูงสุด
- สำรวจเทคนิคการใช้ Per-user Rich Menu เพื่อสร้างประสบการณ์เฉพาะบุคคลและเพิ่มความภักดีของลูกค้าใน LINE Bot
- เปรียบเทียบข้อดีข้อเสียของการสร้าง Rich Menu ผ่าน LINE Official Account Manager กับ Messaging API เพื่อเลือกวิธีที่เหมาะสมกับคุณ
- ค้นพบเทคนิคการใช้ Rich Menu Switch Action เพื่อสร้างเมนูที่มีความซับซ้อนและหลายระดับใน LINE Bot ของคุณ
แหล่งข้อมูลอ้างอิง
Last updated May 20, 2025