CORETH Operations Guide

ตั้งค่าระบบรับไฟล์จาก LINE และ Gmail

ทำตามทีละขั้นเพื่อรับเฉพาะไฟล์ใหม่ ตรวจความปลอดภัย เก็บไฟล์ใน AWS S3 และบันทึกตำแหน่งไว้ใน Supabase/PostgreSQL

1. ภาพรวมการทำงาน

เริ่มจากเลือกแหล่งรับไฟล์ แล้วใช้ขั้นตอนตรวจและจัดเก็บชุดเดียวกัน

รับเฉพาะไฟล์ใหม่
STEP 01รับไฟล์ใหม่LINE ส่ง webhook ทันที หรือ Gmail ตรวจทุกประมาณ 60 วินาที
STEP 02กันข้อมูลซ้ำตรวจ event ID ก่อนดาวน์โหลดและก่อนสร้างไฟล์
STEP 03ตรวจไฟล์ตรวจชนิด ขนาด โครงสร้าง และสแกนไวรัส
STEP 04เก็บใน S3แยกเป็น gmail/line และชนิดของไฟล์
STEP 05ตรวจใน ExplorerSupabase เก็บตำแหน่ง และเปิดด้วยลิงก์ชั่วคราว
หัวข้อ LINE Group Gmail
วิธีรับไฟล์ Webhook จาก LINE Polling ผ่าน Gmail API
ความเร็วโดยทั่วไป ส่งเข้าระบบทันที ภายในประมาณ 60 วินาที
ป้องกันไฟล์เก่า line_not_before_ms gmail_not_before_ms
ป้องกันไฟล์ซ้ำ webhookEventId และ messageId messageId และ partId (ไม่ใช้ attachment retrieval ID)
ชื่อซ้ำ คงชื่อเดิม invoice.pdf ทุกไฟล์ โดย S3 ใช้ UUID ป้องกันการทับกัน

1.1 เตรียมความพร้อมก่อน

รายการกลางที่ควรพร้อมก่อนเริ่ม Infrastructure และตั้งค่า Source โดยสรุปจากขั้นตอนติดตั้งทั้งหมดในคู่มือนี้

AWS / Database / Source Code

Domain / Cloudflare / ผู้ดูแลระบบ

เตรียมแล้ว 0/12 รายการ

1.2 สิ่งที่ต้องเตรียมสำหรับ LINE Group

บัญชีและกลุ่ม

ระบบปลายทาง

เตรียมแล้ว 0/9 รายการ

1.3 สิ่งที่ต้องเตรียมสำหรับ Gmail

Google

ระบบปลายทาง

เตรียมแล้ว 0/8 รายการ
สิ่งที่ควรเข้าใจก่อนเริ่ม: ไฟล์จริงอยู่ใน private S3 ส่วน Supabase/PostgreSQL เก็บชื่อไฟล์ สถานะ S3 key และ Version ID หน้า Explorer ขอ URL ชั่วคราวเมื่อผู้ใช้กดเปิดไฟล์