ข้ามไปยังเนื้อหา
Dee Wan 1.0 ยังอยู่ระหว่างพัฒนาและยังไม่เปิดตัว (pre-MVP) — ดู ขอบเขตผลิตภัณฑ์ 1.0

ฟอร์มบนเว็บไซต์

ส่วน แบบฟอร์ม บนหน้าเก็บสิ่งที่ผู้เยี่ยมชมพิมพ์ คู่มือนี้อธิบายว่าข้อมูลที่ส่งเข้ามาไปที่ใด ได้แก่ การเปิดรับข้อมูล การเพิ่มปลายทาง การอ่านผลการส่ง การลบค่า และการรับเว็บฮุก form.submitted ที่ลงลายเซ็น วิธีเพิ่มฟอร์มลงในหน้า ดู เพิ่มส่วน

  • ต้องมีสิทธิ์ site:infra บทบาท admin ในตัวและ superadmin มีสิทธิ์นี้ หากไม่มี ส่วน การเชื่อมต่อ จะไม่แสดง
  • ต้องปรับใช้ Worker รับฟอร์มแล้ว พร้อมเส้นทาง <host>/v1/interactions/* บนโฮสต์ของเว็บไซต์ หากไม่มี ฟอร์มจะไม่รับข้อมูล ดู ปรับใช้การเปลี่ยนแปลง
  • ปลายทางอีเมลต้องตั้งค่าอีเมลของการติดตั้งไว้ (RESEND_API_KEY และ MAIL_FROM หรือตัวส่งอีเมลของคุณเอง) ดู เพิ่มความลับสำหรับฟีเจอร์เสริม
  1. เปิด การตั้งค่า → การเชื่อมต่อ การ์ด ฟอร์มบนเว็บไซต์ อยู่ใต้เว็บฮุกขาออก
  2. เปิด รับข้อมูลที่ส่ง ข้อความจะเปลี่ยนเป็น ฟอร์มรับข้อมูลอยู่
  3. ตั้ง เก็บสิ่งที่ผู้เยี่ยมชมส่งไว้ (วัน) ได้ 1 ถึง 365 ค่าเริ่มต้นคือ 30
  4. เพิ่มปลายทางเริ่มต้นของเว็บไซต์หากต้องการส่งข้อมูลให้ผู้ดูแล จากนั้นกด บันทึกการตั้งค่าฟอร์ม หากต้องการเก็บข้อมูลอย่างเดียว ไม่จำเป็นต้องเพิ่มปลายทาง

ขณะสวิตช์ปิดอยู่ ทุกฟอร์มบนเว็บไซต์จะตอบว่าไม่รับข้อมูล และไม่มีการเก็บสิ่งใด การปิดสวิตช์ภายหลังไม่ยกเลิกการส่งที่อยู่ในคิวแล้ว

แต่ละเว็บไซต์มีการตั้งค่าของตัวเอง ฟอร์มของเว็บไซต์หนึ่งไม่ส่งไปยังปลายทางของอีกเว็บไซต์หนึ่ง

เว็บไซต์ส่งข้อมูลแต่ละรายการให้ผู้ดูแลได้สูงสุด 5 ปลายทาง แต่ละฟอร์มกำหนดปลายทางแทนค่าเริ่มต้นและเปิดอีเมลตอบรับแยกต่างหากได้ ผู้เยี่ยมชมเลือกปลายทางของผู้ดูแลไม่ได้ และหน้าเว็บไม่แสดงปลายทางเหล่านี้

  • เพิ่มอีเมล เพิ่มช่อง ที่อยู่อีเมล ใส่ที่อยู่เดียว
  • เพิ่ม webhook เพิ่มช่อง URL ของ webhook และ ความลับสำหรับลงนาม URL ต้องขึ้นต้นด้วย https:// และต้องไม่มีชื่อผู้ใช้หรือรหัสผ่าน ความลับต้องยาวอย่างน้อย 16 ตัวอักษร (ไม่เกิน 256)

แต่ละปลายทางมีสวิตช์ ส่งไปยังปลายทางนี้ ของตัวเอง คือ เปิด หรือ หยุดชั่วคราว ปลายทางที่หยุดชั่วคราวจะไม่ได้รับข้อมูลใหม่ และการส่งที่อยู่ในคิวสำหรับปลายทางนั้นจะจบเป็น ส่งไม่ถึง นำออก จะถามยืนยันก่อน ข้อมูลที่เก็บไว้แล้วยังคงอยู่ และการส่งในคิวไปยังปลายทางนั้นจะจบเป็น ส่งไม่ถึง

ความลับเขียนได้อย่างเดียว หลังบันทึก ช่องจะแสดง มีความลับที่บันทึกไว้ พิมพ์ใหม่เพื่อเปลี่ยน เว้นว่างไว้เพื่อคงความลับเดิม ระบบบันทึก URL ผู้รับ และความลับสำหรับลงนามไว้เมื่อรับข้อมูล การแก้ไขมีผลเฉพาะข้อมูลใหม่ การส่งซ้ำยังใช้ค่าที่บันทึกไว้ ฝั่งรับจึงต้องรองรับความลับเดิมขณะที่ยังมีรายการเก่ารอส่ง

หากไม่มีปลายทางเริ่มต้นของเว็บไซต์ การ์ดจะแสดง ยังไม่ได้ตั้งค่าปลายทางเริ่มต้น ข้อมูลยังถูกเก็บและแสดงในรายการ ปลายทางเฉพาะฟอร์มและอีเมลตอบรับยังส่งได้ตามที่ตั้งไว้

หากยังไม่ได้ตั้งค่าอีเมล การ์ดจะแสดง การติดตั้งนี้ยังไม่ได้ตั้งค่าอีเมล การส่งทางอีเมลจะล้มเหลวและถูกลองใหม่เหมือนปลายทางที่ติดต่อไม่ได้ แล้วจบเป็น ส่งไม่ถึง หลังตั้งค่าอีเมลแล้ว ให้กด ส่งอีกครั้ง ทีละรายการ

หากโหลดรายการส่งล่าสุดไม่สำเร็จ ให้เลือก ลองอีกครั้ง ในส่วนนั้น ระบบจะโหลดเฉพาะประวัติและเก็บการตั้งค่าแบบฟอร์มที่ยังไม่ได้บันทึกไว้ ข้อความว่ายังไม่มีการส่งจะแสดงเมื่อโหลดรายการสำเร็จแล้วไม่พบข้อมูลเท่านั้น

การ์ด ข้อมูลที่ส่งล่าสุด แสดงบันทึกการรับข้อมูล 50 รายการล่าสุด รายการนี้ไม่แสดงค่าที่ผู้เยี่ยมชมส่งมา ให้เปิดบันทึกเพื่ออ่านค่าที่ยังเก็บไว้ บันทึกการรับข้อมูลแต่ละรายการแสดง:

  • id ของบันทึกการรับข้อมูลและเวลาที่ได้รับ
  • id ของหน้า ภาษา และเวลาที่จะลบค่า (หรือ ลบค่าแล้ว)
  • หนึ่งบรรทัดต่อการส่ง พร้อมช่องทาง ที่อยู่อีเมลหรือเว็บฮุกที่บันทึกไว้เมื่อรับข้อมูล สถานะ และรายละเอียดสั้น ๆ เช่น HTTP 503

ที่อยู่จะแสดงเฉพาะช่วงที่ยังเก็บค่าของข้อมูลนั้น เมื่อหมดอายุหรือลบค่าแล้ว จะแสดงเพียงช่องทางและสถานะโดยซ่อนที่อยู่ สำหรับเว็บฮุกจะแสดงเฉพาะโพรโทคอล โฮสต์ และพาธ ไม่แสดงพารามิเตอร์คำขอหรือความลับสำหรับลงนาม บันทึกเก่าที่ไม่มีที่อยู่ปลายทางที่บันทึกไว้จะแสดงเฉพาะช่องทาง

สถานะ ความหมาย
รอส่ง อยู่ในคิว การส่งรอบถัดไปจะส่งรายการนี้
จะลองอีกครั้ง การส่งครั้งล่าสุดล้มเหลวเนื่องจากข้อผิดพลาดชั่วคราว มีการกำหนดส่งครั้งถัดไปแล้ว
ส่งถึงแล้ว อีเมล: ผู้ให้บริการอีเมลรับแล้ว เว็บฮุก: ฝั่งรับตอบ 2xx
ส่งไม่ถึง หยุดแล้ว ฝั่งรับปฏิเสธ ทุกครั้งที่พยายามล้มเหลว ปลายทางถูกลบหรือหยุดชั่วคราว หรือค่าถูกลบไปก่อน

การส่งทำงานนาทีละครั้ง สูงสุด 10 รายการต่อเว็บไซต์ต่อรอบ แต่ละรอบจะจองการส่งแต่ละรายการทันทีก่อนส่งรายการนั้น และมีเพียงรอบเดียวที่จองได้สำเร็จ การจองมีอายุ 5 นาทีนับจากตอนนั้น การส่งแต่ละครั้ง ทั้งทางอีเมลและเว็บฮุก จะรอคำตอบไม่เกิน 10 วินาที จากนั้นนับเป็นความพยายามที่ล้มเหลวและจะถูกส่งซ้ำ

หากรอบหนึ่งใช้เวลานานกับรายการใดรายการหนึ่ง รอบนั้นจะไม่ส่งรายการถัดไปที่รอบอื่นจองหรือส่งเสร็จไปแล้วในระหว่างนั้น ก่อนอนุญาตให้ส่งแต่ละครั้ง ระบบจะตรวจว่าค่ายังไม่หมดอายุหรือถูกลบ หากการส่งยังไม่เสร็จเมื่อการจองหมดอายุ รอบถัดไปอาจจองและส่งรายการนั้นอีกครั้ง และคำตอบที่มาช้าของรอบแรกจะถูกละเว้น ดังนั้นรายการหนึ่งอาจถูกส่งมากกว่าหนึ่งครั้ง ดู ตัดรายการซ้ำ

ส่งอีกครั้ง แสดงในบรรทัด จะลองอีกครั้ง และ ส่งไม่ถึง ปุ่มนี้รีเซ็ตจำนวนครั้งที่พยายามและเข้าคิวส่งทันที ข้อความแจ้งจะแสดง จะส่งอีกครั้งภายในหนึ่งนาที ระบบใช้การส่งรายการเดิม ฝั่งรับจึงเห็น receipt เดิมและค่า X-Deewan-Delivery เดิม

ขณะที่รอบการส่งกำลังส่งรายการนั้นอยู่ ส่งอีกครั้ง จะถูกปฏิเสธด้วย 409 delivery_in_progress และข้อความ This delivery is being sent right now. Check it again in a few minutes. ไม่มีสิ่งใดเปลี่ยนแปลง ให้ลองอีกครั้งหลังรอบนั้นเสร็จ

การส่งอีกครั้งไม่ช่วยเมื่อค่าหมดอายุหรือถูกลบ หรือปลายทางถูกลบหรือหยุดชั่วคราว การส่งจะจบเป็น ส่งไม่ถึง อีกครั้ง โดยใช้ผู้รับ URL แม่แบบ และความลับสำหรับลงนามที่บันทึกไว้เมื่อรับข้อมูล ไม่ใช้การตั้งค่าที่แก้ไขภายหลัง

ลบค่า ลบสิ่งที่ผู้เยี่ยมชมส่งมาทันทีหลังยืนยัน บันทึกการรับข้อมูลยังคงอยู่ การส่งซ้ำของข้อมูลรายการเดิมจึงยังถูกจดจำได้ และไม่มีการเก็บซ้ำ การส่งที่ยังไม่ได้ส่งจะจบเป็น ส่งไม่ถึง

ในตัวแก้ไขหน้า เลือกชนิดฟิลด์ อัปโหลดไฟล์ ระบุ ประเภทไฟล์ เป็นนามสกุลหรือ MIME type แบบเจาะจง คั่นด้วยจุลภาค เช่น .pdf, .png หรือ application/pdf หากเว้นว่าง จะรับรูปภาพและเอกสาร ทุกรูปแบบที่รองรับ ไม่รับไวลด์การ์ดอย่าง image/* ตั้ง จำนวนไฟล์สูงสุด (1–5 ค่าเริ่มต้น 1) และ ขนาดสูงสุดต่อไฟล์ (ไม่เกิน 5 MiB ค่าเริ่มต้น 5 MiB) ข้อมูลที่ส่งหนึ่งรายการแนบได้ไม่เกิน 5 ไฟล์ รวมไม่เกิน 10 MiB การตั้งค่า จำเป็น ใช้กับฟิลด์อัปโหลดด้วย

รองรับ PNG, JPEG, WebP, AVIF, GIF, PDF, DOCX, XLSX, PPTX, ODT, ODS, ODP, RTF, TXT และ CSV ระบบตรวจเนื้อหาไฟล์จริง ไม่ได้ดูแค่ชื่อหรือประเภทที่เบราว์เซอร์แจ้ง ไฟล์ว่าง รูปแบบที่ไม่รองรับ หรือไฟล์ที่เกินขีดจำกัดจะแสดงข้อผิดพลาดที่ฟิลด์ ฟอร์มที่เผยแพร่เลือกและส่งไฟล์ได้ทั้งเมื่อเปิดและปิด JavaScript หากปิด JavaScript แล้วข้อมูลไม่ผ่านการตรวจสอบ หน้าจะโหลดใหม่และเบราว์เซอร์จะล้างการเลือกไฟล์ จึงต้องเลือกไฟล์อีกครั้งก่อนส่งใหม่

เปิดบันทึกที่ยังเก็บข้อมูลไว้ใน ข้อมูลที่ส่งล่าสุด เพื่อดูชื่อ ประเภท และขนาดไฟล์ แล้วกด ดาวน์โหลด ต้องมีสิทธิ์ site:infra เช่นเดียวกับการอ่านรายละเอียด และคำขอจะใช้เว็บไซต์ที่เลือกอยู่ ไฟล์จากผู้เยี่ยมชม เก็บในพื้นที่ส่วนตัวของข้อมูลที่ส่ง ไม่เป็นไฟล์สาธารณะในคลังสื่อและไม่มี URL สาธารณะ การติดตั้งต้องตั้งค่า บักเก็ตส่วนตัวก่อนจึงจะรับไฟล์แนบได้ ผูกบักเก็ต R2 ส่วนตัวเดียวกันด้วยชื่อ PRIVATE_MEDIA_BUCKET กับ Worker รับแบบฟอร์มและ Worker ของ CMS ที่ให้ดาวน์โหลดและล้างข้อมูลตามกำหนด ตัวสร้างการตั้งค่า Worker รับแบบฟอร์มจะคัดลอกการผูกบักเก็ตส่วนตัวที่มีอยู่

ไฟล์แนบหมดอายุพร้อมข้อมูลที่ส่ง ลบค่า จะซ่อนรายละเอียดและปิดการดาวน์โหลดทันที เมื่อหมดอายุ ก็ดาวน์โหลดไม่ได้ แม้งานล้างข้อมูลเบื้องหลังยังไม่เริ่ม งานล้างข้อมูลจะลบไฟล์จากที่เก็บและลองใหม่หากลบไม่สำเร็จ บันทึกการรับข้อมูลยังคงอยู่ ไฟล์ที่ดาวน์โหลดไปแล้วหรือสำเนาที่ผู้รับเก็บไว้ไม่สามารถเรียกคืนได้

อีเมลถึงผู้ดูแลแบบเริ่มต้นแสดงชื่อและขนาดไฟล์ ไม่ได้แนบเนื้อไฟล์ เว็บฮุกอาจมี attachments ซึ่งจับคู่ชื่อฟิลด์กับอาร์เรย์ของ { id, name, type, size } ข้อมูลนี้อ้างถึงไฟล์ที่เก็บไว้ ไม่ใช่ URL ดาวน์โหลด ตัวแปรในเทมเพลตอีเมลที่กำหนดเองยังใช้ได้เฉพาะค่าข้อความและบูลีนของฟิลด์

ระบบกำหนดเวลาลบข้อมูลให้แต่ละรายการทันทีที่รับเข้ามา โดยนำเวลาที่รับมาบวกจำนวนวันเก็บรักษาที่ตั้งไว้ในขณะนั้น การเปลี่ยนระยะเวลาเก็บภายหลังมีผลกับข้อมูลใหม่เท่านั้น เมื่อหมดอายุ จะอ่านค่าและดาวน์โหลดไฟล์แนบไม่ได้ทันที แม้งานล้างข้อมูลยังไม่เริ่ม งานล้างทำงานนาทีละครั้งทั้งเว็บไซต์ที่เปิดและปิดใช้งาน ลบค่าที่เก็บไว้และไฟล์แนบ ลองใหม่เมื่อที่เก็บไฟล์ขัดข้อง และเก็บบันทึกการรับข้อมูลไว้ การปิดเว็บไซต์หยุดการส่ง แต่ไม่หยุดการล้างตามระยะเวลาเก็บรักษา

ระบบรับข้อมูลตรวจแต่ละรายการกับฟอร์มที่เผยแพร่ของหน้า ไม่ใช่ฉบับร่าง ไคลเอนต์หนึ่งส่งได้ 10 รายการต่อเว็บไซต์ใน 10 นาที การส่งซ้ำของข้อมูลรายการเดิมจะได้คำตอบว่าได้รับแล้ว โดยใช้บันทึกการรับข้อมูลเดิมและไม่สร้างบันทึกการรับข้อมูลหรือรายการส่งต่อซ้ำ หากต้องการดูแต่ละสถานะที่ผู้เยี่ยมชมพบ ให้เลือกฟอร์มในตัวแก้ไขหน้าแล้วใช้ ดูตัวอย่าง ดู เพิ่มส่วน

อีเมลเริ่มต้นมีหัวเรื่อง New form submission และเนื้อหาหนึ่งบรรทัดต่อฟิลด์ ตามลำดับในฟอร์ม ในรูป label: value ช่องทำเครื่องหมายแสดง Yes หรือ No และคำตอบว่างแสดง — หากให้ความยินยอม จะเพิ่ม Consent: given บรรทัดสุดท้ายระบุบันทึกการรับข้อมูล หน้า ภาษา และเวลาที่มาถึง

ผู้ให้บริการอีเมลมีเวลา 10 วินาทีในการรับอีเมล หากไม่มีคำตอบ เครือข่ายล้มเหลว หรือถูกปฏิเสธ จะส่งซ้ำแบบเดียวกับเว็บฮุกที่ล้มเหลว สูงสุด 5 ครั้ง หากผู้ให้บริการรับอีเมลแล้วแต่คำตอบหายไป อีเมลจะถูกส่งอีกครั้ง กล่องจดหมายจึงอาจได้รับข้อมูลรายการเดียวกันสองครั้ง อีเมลเริ่มต้นมีรหัสบันทึกการรับข้อมูลในบรรทัดสุดท้าย ใช้รหัสนี้เพื่อดูว่าเป็นรายการซ้ำ ส่วนแม่แบบที่กำหนดเองมีเฉพาะข้อความที่ตั้งไว้ โดยไม่เพิ่มรายละเอียดบันทึกการรับข้อมูลให้อัตโนมัติ

ปลายทางเหล่านี้แยกจากเว็บฮุกขาออก ตั้งค่าได้เฉพาะใน ฟอร์มบนเว็บไซต์ และส่งเฉพาะ form.submitted สัญญาใน เว็บฮุกขาออก ไม่ใช้กับปลายทางเหล่านี้

Dee Wan ส่ง POST ไปยัง URL ของปลายทาง:

ส่วนหัว ค่า
Content-Type application/json
X-Deewan-Event form.submitted
X-Deewan-Delivery id ของการส่ง: ข้อมูลหนึ่งรายการไปยังปลายทางหนึ่งแห่ง
X-Deewan-Signature sha256= ตามด้วย HMAC-SHA256 ของไบต์เนื้อหาที่ตรงทุกไบต์ เป็นเลขฐานสิบหกตัวพิมพ์เล็ก ใช้ความลับสำหรับลงลายเซ็นของปลายทางเป็นกุญแจ

เนื้อหา (ค่าเป็นเพียงตัวอย่าง):

{
"event": "form.submitted",
"receipt": "<receipt id>",
"page": "<page id>",
"locale": "en",
"section": "<form section id>",
"submitted_at": "2026-10-13T09:30:00.000Z",
"values": { "email": "visitor@example.com", "subscribe": true },
"labels": { "email": "Email", "subscribe": "Send me news" },
"consent": true,
"attachments": {
"brief": [
{
"id": "<attachment id>",
"name": "brief.pdf",
"type": "application/pdf",
"size": 1024
}
]
}
}
  • receipt คือ id ของข้อมูลที่ส่ง เป็นค่าเดียวกับที่ ข้อมูลที่ส่งล่าสุด แสดง
  • values จับคู่ชื่อฟิลด์แต่ละชื่อกับสตริงหรือค่าบูลีน labels จับคู่ชื่อฟิลด์แต่ละชื่อกับป้ายกำกับในฟอร์มที่เผยแพร่
  • submitted_at คือเวลาที่ระบบรับข้อมูลบันทึกรายการ ในรูปแบบ ISO-8601 UTC
  • คำตอบ 2xx ใด ๆ คือ ส่งถึงแล้ว
  • ไม่มีคำตอบภายใน 10 วินาที เครือข่ายล้มเหลว 408, 429 หรือ 5xx ใด ๆ จะถูกส่งซ้ำ
  • สถานะอื่นทั้งหมดถือเป็นที่สุดและจบเป็น ส่งไม่ถึง ระบบไม่ตามการเปลี่ยนเส้นทาง 3xx จึงเป็นที่สุดเช่นกัน
  • พยายามได้รวมสูงสุด 5 ครั้ง การรอเริ่มที่ 1 นาทีและเพิ่มเป็นสองเท่า สูงสุด 1 ชั่วโมง โดยสุ่มคลาดเคลื่อน 50–100 % ค่า Retry-After ที่ถูกต้อง (วินาทีหรือวันที่แบบ HTTP) ทำให้รอนานขึ้นได้ สูงสุด 1 ชั่วโมง
  • แต่ละครั้งใช้ URL และความลับสำหรับลงนามที่บันทึกไว้เมื่อรับข้อมูล การแก้ไขมีผลเฉพาะข้อมูลใหม่ แต่การปิดหรือลบปลายทางจะหยุดรายการที่รอส่ง

ตรวจไบต์ดิบของเนื้อหาก่อนแยกวิเคราะห์ JSON ที่ถูกจัดรูปใหม่จะไม่ตรงกับลายเซ็น ลายเซ็นครอบคลุมเฉพาะเนื้อหา และ submitted_at อยู่ในเนื้อหานั้น ไม่มีส่วนหัวเวลาแยกต่างหาก

async function verifyFormWebhook(secret, rawBody, signatureHeader) {
const hex = signatureHeader?.startsWith("sha256=")
? signatureHeader.slice(7)
: "";
if (!/^[0-9a-f]{64}$/.test(hex)) return false;
const key = await crypto.subtle.importKey(
"raw",
new TextEncoder().encode(secret),
{ name: "HMAC", hash: "SHA-256" },
false,
["verify"],
);
const signature = new Uint8Array(
hex.match(/../g).map((pair) => parseInt(pair, 16)),
);
return crypto.subtle.verify(
"HMAC",
key,
signature,
new TextEncoder().encode(rawBody),
);
}

คาดไว้ว่าข้อมูลรายการเดียวอาจมาถึงมากกว่าหนึ่งครั้ง คำตอบ 2xx ที่หายไปจะทำให้ส่งซ้ำ ส่งอีกครั้ง จะส่งอีกครั้ง และการส่งที่ใช้เวลานานเกินการจอง 5 นาทีอาจถูกส่งอีกหนึ่งครั้ง อย่าพึ่งพาว่าจะมีคำขอเพียงครั้งเดียว อีเมลก็อาจส่งซ้ำได้ โดยอีเมลเริ่มต้นมีรหัสบันทึกการรับข้อมูลในบรรทัดสุดท้าย

  • ตัดรายการซ้ำด้วย receipt ค่านี้อยู่ในเนื้อหาที่ลงลายเซ็น และคงเดิมในทุกครั้งที่พยายาม เมื่อกด ส่งอีกครั้ง และสำหรับทุกปลายทางของข้อมูลรายการนั้น
  • X-Deewan-Delivery ก็คงเดิมระหว่างความพยายามและเมื่อกด ส่งอีกครั้ง แต่ต่างกันตามปลายทางและไม่ได้ลงลายเซ็น ใช้เพื่อแยกปลายทาง ไม่ใช่เป็นคีย์เดียว
  • บันทึก receipt และดำเนินการที่เป็นผลจากรายการนั้นแบบอะตอมมิกในครั้งเดียวก่อนตอบ 2xx เมื่อมีรายการซ้ำจึงไม่เกิดผลซ้ำ

เพิ่มฟอร์มลงในหน้าด้วย ตัวสร้างหน้า หรืออ่าน สัญญาเว็บฮุกขาออก สำหรับเหตุการณ์เนื้อหา

ใน การตั้งค่า → การเชื่อมต่อ → ฟอร์มบนเว็บไซต์ เปิดใบรับเพื่ออ่านค่าที่ยังเก็บไว้ เฉพาะผู้มี site:infra เท่านั้นที่อ่านการตั้งค่า รายละเอียด และประวัติการส่งได้ ค่าที่หมดอายุหรือถูกลบจะอ่านหรือส่งซ้ำไม่ได้ แม้งานล้างตามกำหนดยังไม่ทำงาน การลบค่าจะลบข้อมูลปลายทางที่บันทึกไว้สำหรับงานรอส่งด้วย

ใช้ ตัวเลือกการส่ง เพื่อเลือกแบบฟอร์มจากหน้าที่เผยแพร่จริง แล้วกำหนดปลายทางเฉพาะแบบฟอร์มนั้น แบบฟอร์มที่ไม่ได้กำหนดจะใช้ค่าเริ่มต้นของไซต์ การกำหนดปลายทางเฉพาะฟอร์มเป็นรายการว่างจะไม่ส่งให้ผู้ดูแล ส่วนอีเมลตอบรับตั้งค่าแยกต่างหาก อีเมลกำหนด หัวข้อ และ ข้อความแม่แบบ · {{field}} แบบข้อความธรรมดาได้ แทรกฟิลด์ เพิ่มฟิลด์จริงของแบบฟอร์ม รองรับเฉพาะตัวแทนค่า {{field}} โดยไม่ประมวลผลนิพจน์ ความลับเว็บฮุกและการตั้งค่าปลายทางอยู่บนเซิร์ฟเวอร์ ไม่อยู่ในหน้าสาธารณะหรือข้อมูลย้ายไซต์

อีเมลตอบรับ ส่งไปยังฟิลด์อีเมลที่เลือก เฉพาะเมื่อแบบฟอร์มที่เผยแพร่มีช่องยินยอมและผู้ส่งเลือกช่องนั้น ใช้ข้อมูล คิว การส่งซ้ำ และกติกาการลบเดียวกับการส่งให้ผู้ดูแล ข้อความยืนยันบนแบบฟอร์มไม่เปลี่ยน

ระบบบันทึกผู้รับหรือ URL เว็บฮุก แม่แบบ และความลับสำหรับลงนามไว้เมื่อรับข้อมูล การแก้การตั้งค่าจะไม่เปลี่ยนปลายทางของงานเก่าที่ส่งซ้ำ การปิดหรือลบปลายทางจะหยุดงานรอส่งนั้น การปิดอีเมลตอบรับจะหยุดงานตอบรับที่รออยู่ด้วย เซิร์ฟเวอร์ตรวจการลบและวันหมดอายุอีกครั้งก่อนเริ่มส่ง แต่ไม่สามารถเรียกคืนคำขอที่ส่งถึงผู้ให้บริการแล้ว

การส่งคำขอเดิมที่รับแล้วซ้ำจะได้ใบรับเดิม แม้ปิดรับแบบฟอร์ม เปลี่ยนหรือลบแบบฟอร์มที่เผยแพร่ ใช้โควตาคำขอหมด หรือค่าที่เก็บไว้ถูกลบแล้ว โดยไม่สร้างคำส่งหรืองานส่งใหม่ หากใช้คีย์เดิมกับข้อมูลที่เปลี่ยนไป ระบบจะปฏิเสธ การตรวจครั้งสุดท้ายอนุญาตการส่งหนึ่งครั้ง การลบค่าไม่สามารถเรียกคืนคำขอที่อนุญาตแล้วหรือกำลังส่งไปยังผู้ให้บริการได้แบบอะตอมมิก


ยังไม่เปิดตัว (pre-MVP) และยังไม่มีเวอร์ชันเสถียร
คอมมิตซอร์สโค้ด: fe23db481c422b40e317b92fc98116b4c0c26a87 (มีการแก้ไขที่ยังไม่คอมมิต)
วันที่สร้างเอกสาร (UTC): 2026-10-18T09:22:34.630Z
คอมมิตสำหรับอัปเกรด: ระบุไม่ได้: มีการแก้ไขที่ยังไม่คอมมิต. บันทึกการเปลี่ยนแปลง