ลิงก์รีแอคชัน

รีแอคชันมักไม่ทำงานคนเดียว — พวกมันเรียกซึ่งกันและกันผ่านปุ่ม, Chain, Branch «else», การตอบกลับในการสนทนา และอื่นๆ ลิงก์รีแอคชัน แสดงกราฟการเปลี่ยนผ่านนี้: สำหรับรีแอคชันใดๆ คุณสามารถดูว่า ไปที่ใด (ลิงก์ขาออก) และ มาจากที่ใด (ลิงก์ขาเข้า) ช่วยให้ไม่หลงทางในสถานการณ์ขนาดใหญ่และลบรีแอคชันได้อย่างปลอดภัย

ลิงก์คืออะไร

ลิงก์คือการเปลี่ยนผ่านแบบมีทิศทางจากรีแอคชันหนึ่งไปยังอีกรีแอคชัน ซึ่งถูกทำเครื่องหมายด้วย กลไก ที่สร้างการเปลี่ยนผ่านนั้น แพลตฟอร์มสำรวจรีแอคชันทั้งหมดและรวบรวมการเปลี่ยนผ่านขาออกทั้งหมด โดยตัดการอ้างอิงถึงตัวเองและเป้าหมายว่างออก และยุบการเปลี่ยนผ่านที่เหมือนกัน รายการลิงก์เข้าถึงได้จาก Editor รีแอคชันและผ่าน API: GET /api/bots/{id}/reactions/{id}/links

ขาเข้าและขาออก

  • ขาออก — รีแอคชันใดที่รีแอคชันปัจจุบันอ้างอิงถึง (ปุ่ม, Chain, Branch «else» ฯลฯ)
  • ขาเข้า — รีแอคชันใดที่อ้างอิงถึงรีแอคชันปัจจุบัน มีประโยชน์ก่อนการลบ: หากมีรีแอคชันอ้างอิงถึงมัน การลบจะทำลายสถานการณ์

12 กลไกลิงก์

  • ปุ่ม (button) — Inline ปุ่มประเภท «เรียกรีแอคชัน» เปิดรีแอคชันอื่นเมื่อกด
  • แทนที่ด้วยปุ่ม (button_replace) — ปุ่มที่มีพฤติกรรม «แทนที่ข้อความ» แทรกเนื้อหาของรีแอคชันที่ผูกไว้
  • ปุ่มไดนามิก (dynamic_button) — ปุ่มจากบล็อค «ปุ่มไดนามิกจากรายการ» นำไปยังรีแอคชัน ดู ปุ่มไดนามิกและพารามิเตอร์
  • บล็อค «รีแอคชัน» (block) — บล็อคข้อความที่เรียกรีแอคชันอื่นระหว่างการส่ง
  • Chain รีแอคชัน (chain) — แอคชัน «Chain รีแอคชัน» เริ่มต้นรีแอคชันอื่น
  • Branch «else» (else) — หากเงื่อนไขไม่ตรง การควบคุมจะไปที่รีแอคชันที่ระบุ
  • Web Request: สำเร็จ (web_success) — รีแอคชันที่เรียกเมื่อ Web Request สำเร็จ
  • Web Request: ข้อผิดพลาด (web_error) — รีแอคชันที่เรียกเมื่อ Web Request เกิดข้อผิดพลาด
  • คำตอบที่คาดหวัง (expected_answer) — รีแอคชันที่ทำงานตามการตอบกลับของผู้ใช้ในขั้นตอนการสนทนา
  • Timeout การรอ (expected_timeout) — รีแอคชันที่ทำงานหากไม่มีคำตอบก่อน Timeout
  • รีแอคชันถัดไป (goto_next) — แอคชัน «รีแอคชันถัดไป» ส่งการควบคุมไปยังรีแอคชันที่เหมาะสมถัดไปในรายการ
  • สถานการณ์ (flow) — รีแอคชันที่ผูกกับการสิ้นสุดของสถานการณ์ (Flow)

ทำไมต้องดูกราฟ

  • การนำทางในสถานการณ์ — ไปยังรีแอคชันที่เกี่ยวข้องได้อย่างรวดเร็วโดยไม่ต้องค้นหาในรายการ
  • การลบอย่างปลอดภัย — ดูลิงก์ขาเข้าและอย่าทำลายการเปลี่ยนผ่าน
  • การตรวจสอบ — ตรวจสอบว่าทุก Branch ของสถานการณ์นำไปที่ถูกต้องและไม่มีการเปลี่ยนผ่านที่ «ห้อยอยู่»

ขั้นตอนถัดไป