Ask me anything
Ithy Logo
Sign in to save

ปลดล็อกศักยภาพ LINE Bot: 10 ตัวอย่าง Rich Menu สุดสร้างสรรค์พร้อมแนวทางการสร้าง

ยกระดับประสบการณ์ผู้ใช้และขับเคลื่อนธุรกิจของคุณด้วย Rich Menu ที่ออกแบบมาอย่างชาญฉลาด

line-bot-rich-menu-examples-9ss6hu4t

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

ตัวอย่างโครงสร้าง 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 สามารถทำได้สองวิธีหลัก:

  1. ผ่าน LINE Official Account Manager: เป็นวิธีที่ใช้ GUI (Graphic User Interface) เหมาะสำหรับผู้ที่ไม่ต้องการเขียนโค้ด สามารถเลือกเทมเพลตที่กำหนดไว้ล่วงหน้า หรืออัปโหลดรูปภาพและกำหนดพื้นที่กดได้โดยตรงจากแพลตฟอร์ม ข้อจำกัดคือ Rich Menu ที่สร้างด้วยวิธีนี้จะไม่สามารถจัดการผ่าน API ได้
  2. ผ่าน 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 ทั้งหมดที่สร้างผ่าน API
    • Delete 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 ที่หลากหลาย

ตัวอย่างการออกแบบ 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 ที่มีการแบ่งพื้นที่ชัดเจน

ตัวอย่างโครงสร้าง 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 ซึ่งสามารถนำไปประยุกต์ใช้ในการออกแบบเมนูของคุณได้อย่างมีประสิทธิภาพ

mindmap root["LINE Rich Menu"] id1["องค์ประกอบ (Components)"] id1a["รูปภาพพื้นหลัง (Background Image)
ขนาด: 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 คืออะไร?

Rich Menu คือเมนูปรับแต่งที่แสดงอยู่ด้านล่างของหน้าจอแชทใน LINE Official Account ช่วยให้ผู้ใช้เข้าถึงฟังก์ชันต่างๆ ของบอทได้อย่างรวดเร็ว เช่น ลิงก์ไปยังเว็บไซต์, การส่งข้อความที่กำหนดไว้, หรือการเปิดหน้า LIFF

สามารถสร้าง Rich Menu ได้กี่อันต่อบัญชี?

คุณสามารถสร้าง Rich Menu ได้สูงสุด 1,000 เมนูต่อหนึ่ง LINE Official Account ผ่าน Messaging API

Rich Menu หนึ่งอันสามารถมีปุ่มกด (Tappable Areas) ได้กี่ปุ่ม?

Rich Menu หนึ่งอันสามารถกำหนดพื้นที่ที่กดได้ (Tappable Areas) สูงสุด 20 พื้นที่

ขนาดและประเภทไฟล์รูปภาพที่แนะนำสำหรับ Rich Menu คืออะไร?

ขนาดรูปภาพที่แนะนำคือ 2500x1686 พิกเซล (สำหรับเมนูขนาดใหญ่) หรือ 2500x843 พิกเซล (สำหรับเมนูขนาดเล็ก) ไฟล์รูปภาพควรเป็น PNG หรือ JPEG และมีขนาดไม่เกิน 1MB

สามารถตั้งค่า Rich Menu ให้แตกต่างกันสำหรับผู้ใช้แต่ละคนได้หรือไม่?

ใช่ คุณสามารถใช้ Messaging API เพื่อสร้าง "Per-user Rich Menu" ซึ่งจะแสดง Rich Menu ที่แตกต่างกันไปตามผู้ใช้แต่ละรายได้ เช่น แสดงเมนูพิเศษสำหรับสมาชิกระดับ VIP หรือเมนูตามความสนใจของผู้ใช้


คำแนะนำเพิ่มเติม


แหล่งข้อมูลอ้างอิง

knowledge.littlehelp.co.jp
Smart Rich menu - Knowledge Base
blog.botbonnie.com
Menu management
bottender.js.org
Rich Menu | Bottender

Last updated May 20, 2025

AI-assisted research. Sources, methodology and corrections · Source-checked guides and tools · Explore published answers

Ask Ithy AI