NP
Nguyễn Văn Phú
Bộ não thứ 2 · Tài liệu học viên
Phiếu lệnh triển khai · Module Facebook ⇄ Lark

Viết bài trong Lark,
bài tự lên Facebook

Bạn điền 5 ô ở dưới. Khối lệnh tự ghép lại. Sao chép, dán vào Claude Code — máy dựng bảng trong Lark Base, kéo danh sách Fanpage về và nối nút Đăng cho bạn.

Bạn chỉ phải tự tay 2 việc: lấy token Facebook dài hạn, và bấm mấy nút mà máy không bấm thay được. Phần còn lại là điền ô rồi dán.

01
Lấy token FB
tay · 60 ngày phải gia hạn
02
Điền 5 ô
khối lệnh tự ghép
03
Dán vào Claude Code
máy dựng bảng + nút
04
Bấm nút Đăng
tay · vài nút cuối
Hình 1

Một vòng khép kín, Lark đứng giữa

Bạn viết bài trong bảng Lark. Máy mang bài đó sang Facebook. Rồi đem kết quả về đúng cái dòng bạn vừa viết.

LARK BASE
14.1 — danh sách Page
14.3 — nơi bạn viết bài
bạn làm việc ở đây
GitHub Actions
chỉ chạy khi
được gọi
Facebook
Fanpage của bạn
bài lên tường / Reel
Link bài đăng và trạng thái được ghi ngược về đúng dòng bạn vừa viết. Không có gì chạy ngầm — hệ chỉ động khi bạn bấm nút hoặc khi bạn hẹn giờ trong Lark.

Đi hết một vòng là về chỗ cũ. Bạn không phải mở Facebook ra dò xem bài lên chưa. Lên hay hỏng đều hiện ngay trên dòng bạn vừa gõ.

Nguyên tắc

Bạn viết bài, máy ghi kết quả

Hai cột dưới đây đừng lẫn vào nhau. Gõ tay vào cột bên phải là tự xoá dấu vết của chính mình.

Bạn điền

Nội dung bài đăng

  • Page — chọn Fanpage muốn đăng. Chọn nhiều thì bài lên nhiều Page cùng lúc.
  • Loại — Hình ảnh lên tường, Video thành Reel.
  • Nội dung — chữ của bài viết.
  • Tệp — kéo ảnh hoặc video thả vào ô.

Máy ghi

Dấu vết sau khi đăng

  • Bảng 14.1 — danh sách Page kèm chìa khoá riêng của từng Page.
  • Trạng thái — Thành công hay Thất bại.
  • Link — đường dẫn tới bài vừa lên.
  • Log — lý do, khi bài hỏng.
Hai lệnh

Toàn bộ thứ có thể bấm

Lark không tự đăng bài. Lark gõ cửa GitHub. GitHub mới dựng máy và gọi sang Facebook.

fetch-pages — Kéo danh sách Fanpage

Lấy về mọi Page bạn đang quản trị, kèm chìa khoá riêng của từng Page. Thêm Page mới thì chạy lại lệnh này.

dang-bai — Đăng bài lên Facebook

Lấy đúng dòng bạn vừa bấm, đẩy ảnh hoặc Reel lên Page, rồi ghi link bài về lại dòng đó.

Vận hành

Một bài đăng đi qua những đâu

  1. Bạn viết. Điền một dòng ở bảng 14.3 — chọn Page, chọn loại, gõ nội dung, kéo tệp vào.
  2. Bạn bấm nút Đăng. Lark gọi sang GitHub. Nó trả về mã 204 — nghĩa là đã nhận lệnh, chưa phải là đã đăng xong.
  3. Máy làm việc, 30–60 giây. Tải tệp từ Lark, đẩy lên Facebook, chờ Facebook xử lý xong video nếu là Reel.
  4. Kết quả về đúng dòng. Trạng thái chuyển Thành công, cột Link hiện đường dẫn. Hỏng thì lý do nằm ở cột Log.

Ba câu là hiểu cả hệ

  • Hệ không tự chạy. Không có tiến trình nào chạy ngầm. Nó chỉ động khi bạn bấm nút hoặc khi bạn hẹn giờ.
  • Bảng là sự thật. Bài lên hay hỏng đều hiện trên chính dòng bạn viết. Không phải mở Facebook ra dò.
  • Chìa khoá có hạn dùng. Token mặc định của Facebook chỉ sống một hai giờ. Phải đổi sang loại dài hạn. Không đổi thì hôm nay chạy ngon, mai chết im lặng.
01Bắt buộc làm trước

Lấy token Facebook dài hạn

Facebook mặc định đưa cho bạn token ngắn hạn, sống được 1–2 giờ. Cài xong thấy chạy đúng, vài giờ sau mọi lệnh lặng lẽ hỏng mà không báo gì. Phải đổi nó thành token dài hạn — khoảng 60 ngày — trước khi làm bất cứ bước nào.

Các bước chi tiết nằm ở tab Lấy token Facebook. Làm mất khoảng 5 phút, và về sau cứ 2 tháng lặp lại một lần.

Cách kiểm nhanh xem mình cầm đúng chuỗi chưa Dán chuỗi bạn vừa lấy vào Access Token Debugger. Dòng Expires phải ghi khoảng 2 tháng nữa. Còn ghi vài giờ nghĩa là bạn đang cầm nhầm chuỗi cũ — quay lại làm tiếp bước gia hạn.
02Điền 5 ô của bạn

Năm giá trị, khối lệnh tự ghép

Gõ tới đâu khối lệnh ở mục 03 đổi tới đó. Ô nào để trống thì nó giữ giá trị mẫu, bạn vẫn sao chép được — nhưng phải tự thay tay lúc chat.

Lark Developer Console → app của bạn → Credentials & Basic Info.
Nằm ngay dưới App ID, cùng một trang.
Mở Base rồi copy nguyên đường dẫn trên thanh địa chỉ. Link dạng /wiki/… vẫn dán được — máy tự tra ra mã thật.
Chuỗi dài hạn lấy ở mục 01. Dán nhầm chuỗi ngắn hạn là vài giờ sau hệ chết im lặng.
Đây là chìa để nút Đăng trong Lark gọi được sang GitHub. Chưa có thì xem hộp bên dưới.
Không cần điền. Mặc định là tất cả Page bạn đang quản trị — khối lệnh đã ghi sẵn. Chỉ điền khi muốn giới hạn vài Page cụ thể.
Chưa có GITHUB_PAT?

Vào trang tạo token của GitHub — quyền repoworkflow đã được tick sẵn. Còn hai chỗ bạn phải tự chọn:

  • Ô Expiration → chọn No expiration. Để mặc định 30 days thì đúng một tháng sau nút Đăng tự chết, mà không báo gì cả.
  • Bấm Generate token ở cuối trang. Chuỗi ghp_… chỉ hiện một lần duy nhất — copy ngay rồi dán vào ô GITHUB_PAT ở trên.

Mấy giá trị này chỉ nằm trong trình duyệt của bạn. Trang không gửi đi đâu, không lưu lại gì. Đóng tab là mất sạch.

03Khối lệnh

Sao chép rồi dán vào Claude Code

Lệnh triển khai

    
Chưa điền cũng sao chép được Nhưng khi đó bạn phải tự thay 5 giá trị mẫu (cli_xxxx, ghp_xxxx, EAAxxxx…) ngay trong lúc chat. Điền ở mục 02 vừa nhanh vừa không sai chính tả. Gõ sai một ký tự trong chuỗi bí mật là lỗi câm — máy vẫn báo đã nhận lệnh mà không chạy gì.
04Máy sẽ dựng gì

Hai bảng, hai lệnh, hết

Bộ này làm đúng hai việc: kéo danh sách Fanpage về, và đăng bài từ Lark lên Facebook. Mỗi việc là một đường link HTTP để gắn vào nút bấm trong Lark.

BảngChứa gìLệnh chạy
14.1Danh sách Fanpage + access_token riêng của từng Pagefetch-pages
14.3Nơi bạn viết bài rồi bấm Đăng — ảnh hoặc Reeldang-bai
Lệnh init-tables chỉ chạy một lần Nó dựng bộ bảng lúc cài. Nó tạo sẵn thêm mấy bảng bạn chưa dùng tới — cứ để nguyên, đừng xoá. Sau này cần mở rộng thì không phải cài lại từ đầu.
05Ba việc máy không bấm thay được

Ba chỗ hay tắc nhất

Máy sẽ dừng lại và nhắc bạn. Nhưng biết trước thì đỡ mất thời gian.

1 · Bật Actions trên bản nhân bản

Vào tab Actions của repo bạn vừa nhân bản → bấm nút xanh “I understand my workflows, go ahead and enable them”. GitHub cố tình tắt sẵn khi fork. Bỏ bước này thì mọi lệnh HTTP đều trả 204 — trông y như thành công — nhưng thực tế không chạy gì cả.

2 · Cho app Lark vào Base với quyền sửa

Mở Base → nút ••• góc trên bên phải → thêm ứng dụng bạn vừa tạo → chọn quyền Can edit. Thiếu bước này thì máy đọc được nhưng không ghi được: nhìn như đang chạy mà bảng vẫn trống trơn.

3 · Cột Đăng ở bảng 14.3 phải là kiểu Nút bấm

Lark không cho tạo cột kiểu Nút bấm bằng API, nên bạn phải tự đổi tay trong Base. Có nút rồi thì automation mới bắt được cú bấm của bạn.

06Đăng thử

Bài đầu tiên

Máy báo xong thì mở bảng 14.3 trong Base, làm đúng một dòng:

CộtĐiền gì
PageChọn Page muốn đăng. Chọn nhiều Page thì bài lên nhiều Page cùng lúc.
LoạiHình ảnh → đăng lên tường. Video → đăng dạng Reel: MP4 dọc 9:16, dài 3–90 giây.
Nội dungChữ của bài viết.
Ảnh/videoKéo tệp thả vào ô.
ĐăngBấm nút. Rồi chờ 30–60 giây.
Đọc kết quả Xong thì cột Trạng thái chuyển Thành công và cột Link bài đăng hiện đường dẫn. Nếu Thất bại, lý do nằm ở cột Log. Muốn đăng lại một dòng: xoá chữ “Thành công” ở cột Trạng thái rồi bấm Đăng lần nữa.
Nhớ chạy fetch-pages trước Page nào chưa có trong bảng 14.1 thì không đăng lên được.
Lấy token · khoảng 5 phút

Token dài hạn, làm một lần dùng 60 ngày

Đây là bước duy nhất bạn phải tự tay vào trang lập trình viên của Facebook. Làm chậm rãi, đúng thứ tự, thì không sai chỗ nào.

Toàn bộ mục đích của mục này là lấy được một chuỗi ký tự bắt đầu bằng EAA để dán vào ô FB_USER_TOKEN ở tab Triển khai.

ATạo app Facebook

Một lần duy nhất, dùng mãi

Nếu bạn đã có sẵn app Facebook thì bỏ qua mục này, sang thẳng mục B.

  1. Mở developers.facebook.com/apps → bấm Create App.
  2. Phần Use case chọn Other → loại app chọn Business.
  3. Đặt tên gì cũng được, ví dụ Dang bai tu Lark. Bấm tạo. Xong là có app.
Không cần submit duyệt app App ở chế độ phát triển vẫn đăng bài lên Page của chính bạn được. Chỉ khi muốn người khác dùng app của bạn thì mới phải đem đi duyệt.
BLấy token ngắn hạn

Ba quyền, không thừa không thiếu

  1. Mở Graph API Explorer.
  2. Góc trên bên phải, ô Meta App → chọn đúng app bạn vừa tạo.
  3. Ô User or Page → chọn User Token.
  4. Ở khung Permissions bên dưới, tick đủ 3 quyền: pages_show_list, pages_read_engagement, pages_manage_posts.
  5. Bấm Generate Access Token → đăng nhập Facebook → tick chọn những Fanpage bạn muốn hệ thống dùng → bấm cho phép.
  6. Copy chuỗi EAA… vừa hiện ra. Chuỗi này chưa dùng được — nó chỉ sống 1–2 giờ. Sang mục C để đổi.
Bỏ sót bước tick Fanpage là hỏng Không tick Page nào thì token vẫn tạo ra bình thường, nhưng lệnh fetch-pages sẽ kéo về một danh sách rỗng. Bảng 14.1 trống trơn mà không có lỗi nào báo cho bạn biết vì sao.
CĐổi thành dài hạn

Bước hay bị bỏ quên nhất

Đây chính là chỗ làm hệ của bạn “chạy ngon rồi tự chết” nếu bỏ qua.

  1. Mở Access Token Debugger.
  2. Dán chuỗi EAA… vừa lấy vào ô, bấm Debug.
  3. Kéo xuống cuối trang, bấm Extend Access Token.
  4. Chuỗi mới hiện ra bên dưới mới là thứ cần dùng. Copy nó — đừng copy nhầm chuỗi cũ ở ô trên.
  5. Dán chuỗi mới vào ô FB_USER_TOKEN ở tab Triển khai.
Kiểm lại cho chắc Dán chuỗi mới vào Debugger một lần nữa. Dòng Expires phải ghi khoảng 2 tháng nữa. Còn ghi vài giờ nghĩa là bạn đang cầm nhầm chuỗi cũ — làm lại mục C.
Ba điều cần biết

Giữ chìa khoá cho đúng

Token là mật khẩu

Ai cầm được nó cũng đăng bài lên Page của bạn. Đừng chụp màn hình gửi vào nhóm chat. Lỡ lộ thì vào Facebook → Cài đặt → Công cụ kinh doanh, gỡ ứng dụng ra — token cũ mất hiệu lực ngay lập tức.

60 ngày là hết hạn

Lịch đặt sẵn đi. Đến hạn thì quay lại mục B và C, lấy chuỗi mới, thay vào chỗ cũ trong GitHub Secrets. Không phải làm lại gì khác.

Chìa của từng Page thì khác

Lệnh fetch-pages kéo về access_token riêng của mỗi Page. Loại này không hết hạn chừng nào token người dùng còn sống lúc lấy. Nên gia hạn xong nhớ chạy lại fetch-pages.