Ngày: 16/09/2026 (01:00) · Người làm: Tonny · Trạng thái: ĐÃ ÁP + ĐÃ KIỂM CHỨNG ĐẾN NƠI ĐẾN
scripts/fix_vhome_bot_token_theo_page.py --apply.backup/n8n-chung-truoc-fix-vhome-token-20260916-005804.sqlite ✓healthz = 200, log xác nhận toàn bộ workflow (kể cả hub + bot V-Home) đã activated lại.workflow_history.nodes (đúng activeVersionId) + workflow_entity.nodes → đọc lại xác nhận đã có page_id và URL chọn token theo page ✓Em bắn 3 lượt tin test qua hub rồi giải mã execution_data để xem node gửi trả lời đã dùng token nào lúc chạy:
| Lượt test | Page trong payload | Exec | Token bot THỰC SỰ dùng | Kết luận |
|---|---|---|---|---|
| 1 | phụ 1095226437008709 | hub #762 → bot #763 | FB_PAGE_CHUMAP_BLOG_TOKEN (đúng token page phụ) | ✅ ĐÚNG |
| 2 | chính 1135546003195059 | hub #764 → bot #765 | FB_PAGE_VHOME_TOKEN (đúng token page chính) | ✅ KHÔNG HỎNG page chính |
| 3 | chính 1135546003195059 | hub #766 → bot #767 | FB_PAGE_VHOME_TOKEN | ✅ lặp lại ổn định |
(#100) Không tìm thấy người dùng phù hợp — đúng kỳ vọng, vì PSID trong tin test là dãy số giả do em tự đặt; Facebook không có người dùng đó nên không thể gửi. KHÔNG phải lỗi của bot.execution_data của n8n lưu dạng JSON làm phẳng; em trích ra URL đã resolve (bản không còn {{ }}) → trong đó chứa token thật → đối chiếu với .env để biết token thuộc page nào.-wal nên đọc trực tiếp DB sẽ thấy thiếu; phải copy cả -wal mới thấy đủ (em đã ghi bài học này vào quy chuẩn n8n).Bằng chứng trên đã chứng minh bot chọn đúng token theo page. Phép thử cuối cùng (không thể giả lập) là khách thật nhắn vào page phụ và bot trả lời đúng danh nghĩa page phụ:
info@tonny.info (5 việc + 5 file đính kèm) → sổ mail về 0/5, bắt đầu lượt mới.vhome_access_alert.py): đang 🟢.1095226437008709 ("Chú Mập" → tên V-Home): Graph API chặn (#3), phải vào Page Settings trên web → khi máy rảnh em tự vào làm, không cần Anh bấm.