Hướng Dẫn Lấy Long-Lived Access Token Để Đăng Video Tự Động Lên Fanpage Facebook Bằng Cách Tạo App Facebook

Việc lấy Long Token Facebook là bước quan trọng nếu bạn muốn đăng video tự động lên Fanpage, lập lịch đăng bài hoặc tích hợp với các phần mềm quản lý Fanpage. So với Access Token ngắn hạn, Long-Lived Access Token có thời gian sử dụng lâu hơn, giúp hạn chế việc phải đăng nhập và lấy lại token thường xuyên.

Trong bài viết này, chúng tôi sẽ hướng dẫn chi tiết cách lấy Long Token Facebook thông qua việc tạo Facebook App.

Long-Lived Access Token Facebook là gì?

Long Token (Long-Lived Access Token) là mã xác thực được Facebook cấp cho ứng dụng để thay mặt người dùng thực hiện các thao tác được cấp quyền như:

  • Đăng video lên Fanpage.
  • Đăng bài viết.
  • Đăng ảnh.
  • Chỉnh sửa bài viết.
  • Quản lý Fanpage.
  • Đọc thông tin Fanpage.
  • Tự động hóa các tác vụ Marketing.

Thông thường:

  • User Access Token: khoảng 1–2 giờ.
  • Long-Lived User Token: khoảng 60 ngày.
  • Page Access Token được tạo từ Long Token sẽ hoạt động ổn định hơn và chỉ hết hạn khi người dùng đổi mật khẩu, thu hồi quyền hoặc xóa ứng dụng.

Điều kiện để lấy Long-Lived Access Token

Trước khi bắt đầu, bạn cần chuẩn bị:

  • Một tài khoản Facebook.
  • Fanpage mà tài khoản đang là Quản trị viên (Admin).
  • Tài khoản có thể truy cập Meta for Developers.
  • Trình duyệt Chrome hoặc Edge.

Bước 1: Truy cập Meta for Developers

Đăng nhập Facebook sau đó truy cập:

https://developers.facebook.com/

Chọn Ứng dụng của tôi Tạo ứng dụng

Bước 2: Tạo Facebook App

  • Tên ứng dụng
    • Nhập tên, ví dụ:
      • Video Auto Upload
      • Facebook Video API
      • MMO Fanpage Tool
  • Email liên hệ
    • Giữ nguyên email của bạn.
  • Nhấn Tiếp.

Tại bước Trường hợp sử dụng, trong phần Lọc theo hãy chọn Tất cả để hiển thị đầy đủ các tùy chọn. Sau đó kéo xuống và chọn Quản lý mọi thứ trên Trang,

đây là trường hợp sử dụng phù hợp để lấy quyền quản lý Fanpage và sử dụng Facebook Graph API cho các chức năng như đăng bài, đăng ảnh và đăng video tự động. Cuối cùng nhấn Tiếp để tiếp tục tạo ứng dụng.

Ở bước Doanh nghiệp, nếu chưa có hoặc chưa muốn liên kết Hồ sơ doanh nghiệp (Business Portfolio) với ứng dụng, hãy chọn Tôi chưa muốn kết nối hồ sơ doanh nghiệp. Tùy chọn này không ảnh hưởng đến việc lấy Long Token hay quản lý Fanpage. Sau đó nhấn Tiếp để tiếp tục tạo ứng dụng.

Ở bước Yêu cầu về việc phát hành, nếu Meta hiển thị thông báo “Không xác định thấy yêu cầu nào”, nghĩa là ứng dụng hiện không cần đáp ứng thêm yêu cầu nào để tiếp tục tạo. Bạn chỉ cần nhấn Tiếp để chuyển sang bước Tổng quan và hoàn tất quá trình tạo ứng dụng.

Ở bước Tổng quan, hãy kiểm tra lại toàn bộ thông tin của ứng dụng như tên ứng dụng, trường hợp sử dụng và các thiết lập đã chọn. Nếu mọi thông tin đều chính xác, nhấn Tạo ứng dụng để hoàn tất. Sau khi ứng dụng được tạo thành công, bạn sẽ được chuyển đến trang quản lý (Dashboard) để tiếp tục cấu hình và lấy Long Token Facebook.

Sau khi tạo ứng dụng thành công, bạn sẽ được chuyển đến Bảng điều khiển (Dashboard) của App.

Tại đây, trong mục Tùy chỉnh ứng dụng và các yêu cầu, hãy nhấn vào Tùy chỉnh trường hợp sử dụng Quản lý mọi thứ trên Trang để bắt đầu cấu hình các quyền và tính năng cần thiết cho ứng dụng.

Sau khi mở mục Quyền và tính năng, Meta sẽ hiển thị danh sách các quyền mà ứng dụng có thể sử dụng. Để lấy Long Token và đăng video tự động lên Fanpage, bạn cần kích hoạt các quyền sau:

  • pages_manage_posts: Cho phép ứng dụng tạo, chỉnh sửa và xóa bài viết trên Fanpage. Đây là quyền bắt buộc để đăng bài và đăng video.
  • pages_read_engagement: Cho phép ứng dụng đọc thông tin và nội dung của Fanpage, đồng thời lấy dữ liệu cần thiết khi thực hiện các thao tác thông qua Graph API.
  • pages_show_list: Cho phép ứng dụng truy cập danh sách các Fanpage mà tài khoản Facebook đang quản lý. Quyền này cần thiết để lấy Page Access Token của Fanpage.

Đối với từng quyền, hãy nhấn Hành động (hoặc Thêm nếu quyền chưa được kích hoạt), sau đó chọn Thêm vào ứng dụng. Thực hiện lần lượt với cả 03 quyền trên.

Sau khi hoàn tất, các quyền sẽ ở trạng thái Sẵn sàng thử nghiệm, cho phép bạn sử dụng trong chế độ phát triển để lấy Access Token và thử nghiệm các chức năng đăng video lên Fanpage.

Đây là bước quan trọng giúp bạn thiết lập các quyền truy cập liên quan đến Fanpage, từ đó có thể lấy User Access Token, chuyển đổi sang Long-Lived Access Token và lấy Page Access Token phục vụ cho việc đăng bài, đăng ảnh và đăng video tự động lên Fanpage Facebook.

Sau khi nhấn vào Tùy chỉnh trường hợp sử dụng Quản lý mọi thứ trên Trang, bạn sẽ được chuyển đến trang cấu hình các API và quyền truy cập của ứng dụng để tiếp tục các bước tiếp theo.

Sau khi thêm các quyền cần thiết cho ứng dụng, bạn cần bổ sung một số thông tin cơ bản để hoàn thiện cấu hình App.

Từ menu bên trái, chọn Cài đặt ứng dụngThông tin cơ bản.

Tại đây, hãy điền các thông tin sau:

  • Miền ứng dụng (App Domains): Nhập tên miền website của bạn, ví dụ: example.com.
  • URL Chính sách quyền riêng tư (Privacy Policy URL): Nhập đường dẫn đến trang Chính sách quyền riêng tư trên website. Ví dụ: https://example.com/privacy-policy.

Nếu website của bạn chưa có trang Chính sách quyền riêng tư, bạn có thể tạo một trang mới với nội dung cơ bản, bao gồm các thông tin như:

  • Mục đích thu thập dữ liệu người dùng.
  • Loại dữ liệu được thu thập (nếu có).
  • Cách sử dụng và bảo vệ dữ liệu.
  • Cam kết không chia sẻ thông tin cho bên thứ ba khi chưa có sự đồng ý của người dùng.
  • Thông tin liên hệ để người dùng gửi yêu cầu liên quan đến dữ liệu cá nhân.
  • Điều khoản cập nhật hoặc thay đổi chính sách trong tương lai.

Sau khi hoàn tất, nhấn Lưu thay đổi để cập nhật thông tin cho ứng dụng.

Lưu ý: Đây là những thông tin cơ bản mà Meta khuyến nghị cung cấp cho mọi ứng dụng. Việc thiết lập đầy đủ Miền ứng dụngURL Chính sách quyền riêng tư sẽ giúp ứng dụng đáp ứng tốt hơn các yêu cầu của nền tảng Meta, đặc biệt khi cần gửi ứng dụng xét duyệt hoặc mở rộng quyền truy cập trong tương lai.

Sau khi hoàn tất các bước cấu hình và bổ sung đầy đủ thông tin cho ứng dụng, hãy chuyển sang mục Đăng trong menu bên trái.

Lúc này, Meta sẽ kiểm tra lại toàn bộ cấu hình của ứng dụng. Nếu không còn thiếu thông tin bắt buộc, bạn chỉ cần đợi vài phút để hệ thống đồng bộ các thay đổi vừa thực hiện.

Sau đó, nhấn nút Đăng ở góc dưới bên phải để phát hành ứng dụng.

Sau khi ứng dụng được phát hành thành công, bạn đã hoàn tất quá trình tạo App trên Meta Developers và có thể chuyển sang bước tiếp theo là đăng nhập, cấp quyền cho Fanpage và lấy Long-Lived Access Token.

Lưu ý: Nếu sau khi vừa lưu cấu hình mà nút Đăng chưa hoạt động hoặc xuất hiện thông báo chưa đủ điều kiện, hãy chờ khoảng 1–5 phút để Meta cập nhật dữ liệu rồi tải lại trang và thực hiện lại thao tác.

Hoàn thành tạo App

Đến đây, bạn đã tạo thành công ứng dụng trên Meta Developers với các quyền cần thiết để quản lý Fanpage. Ở phần tiếp theo, chúng ta sẽ tiến hành:

  • Đăng nhập ứng dụng bằng tài khoản Facebook.
  • Ủy quyền Fanpage cho ứng dụng.
  • Lấy User Access Token.
  • Chuyển đổi sang Long-Lived Access Token.
  • Lấy Page Access Token để sử dụng cho việc đăng video tự động lên Fanpage Facebook thông qua Graph API.

Đây là bước quan trọng để ứng dụng có thể thay mặt bạn thực hiện các thao tác quản lý và đăng nội dung lên Fanpage.

Bước 3: Tiến hành lấy User Access Token

Sau khi ứng dụng đã được phát hành, bước tiếp theo là lấy User Access Token để thực hiện việc ủy quyền Fanpage và tạo Long-Lived Access Token.

Trên thanh menu của Meta Developers, chọn Công cụTrình khám phá API Đồ thị (Graph API Explorer).

Đây là công cụ chính thức của Meta, cho phép bạn tạo và kiểm tra Access Token, thực hiện các lệnh gọi đến Facebook Graph API cũng như thử nghiệm các API trước khi tích hợp vào ứng dụng.

Sau khi mở Trình khám phá API Đồ thị, chúng ta sẽ tiến hành đăng nhập, cấp quyền cho ứng dụng và lấy User Access Token ở các bước tiếp theo.

Trong Trình khám phá API Đồ thị (Graph API Explorer), tại mục Người dùng hoặc Trang, nhấn vào Lấy mã và chọn Nhận mã truy cập Trang.

Ngay sau đó, Meta sẽ hiển thị cửa sổ đăng nhập và cấp quyền cho ứng dụng.

Nếu chưa đăng nhập Facebook, hãy đăng nhập bằng tài khoản đang quản lý Fanpage cần sử dụng. Tiếp theo, thực hiện lần lượt các bước cấp quyền theo hướng dẫn của Meta:

  • Đăng nhập vào tài khoản Facebook.
  • Cho phép ứng dụng truy cập tài khoản.
  • Chọn Fanpage mà bạn muốn ứng dụng quản lý và đăng video.
  • Cấp đầy đủ các quyền mà ứng dụng yêu cầu.
  • Xác nhận hoàn tất quá trình ủy quyền.

Sau khi quá trình ủy quyền thành công, Graph API Explorer sẽ tự động tạo Page Access Token cho Fanpage đã chọn và hiển thị trong ô Mã truy cập.

Từ thời điểm này, ứng dụng đã được cấp quyền quản lý Fanpage và có thể sử dụng Page Access Token để thực hiện các thao tác như đăng bài viết, đăng ảnh và đăng video thông qua Facebook Graph API.

Lưu ý: Trong quá trình cấp quyền, hãy đảm bảo bạn chọn đúng Fanpage muốn sử dụng và không bỏ chọn bất kỳ quyền nào mà Meta yêu cầu. Nếu từ chối một hoặc nhiều quyền, ứng dụng có thể không lấy được Access Token hoặc không đủ quyền để đăng video lên Fanpage.

rước khi tạo Access Token, bạn cần chọn các quyền (Permissions) mà ứng dụng sẽ sử dụng.

Tại mục Thêm quyền, Meta sẽ hiển thị danh sách tất cả các quyền mà ứng dụng có thể yêu cầu. Bạn có thể chọn toàn bộ các quyền nếu muốn, hoặc chỉ chọn những quyền phù hợp với nhu cầu sử dụng.

Đối với mục đích đăng video tự động lên Fanpage, điều quan trọng là Access Token phải có ít nhất 03 quyền sau:

  • pages_manage_posts: Cho phép tạo và quản lý bài viết, bao gồm đăng video lên Fanpage.
  • pages_read_engagement: Cho phép đọc thông tin và dữ liệu của Fanpage để thực hiện các thao tác thông qua Graph API.
  • pages_show_list: Cho phép lấy danh sách các Fanpage mà tài khoản đang quản lý để tạo Page Access Token.

Đây cũng chính là 03 quyền chúng ta đã thêm vào ứng dụng ở các bước trước. Nếu thiếu một trong ba quyền này, quá trình lấy Access Token hoặc đăng video lên Fanpage có thể không hoạt động.

Sau khi chọn xong các quyền, tiếp tục nhấn Nhận mã và hoàn tất quá trình cấp quyền để Meta tạo Page Access Token cho Fanpage của bạn.

Để đảm bảo Access Token được tạo với đầy đủ các quyền vừa cấp, nhấn Generate Access Token thêm một lần nữa.

Sau khi hoàn tất, hệ thống sẽ tạo Page Access Token mới, sẵn sàng sử dụng để kết nối ứng dụng và thực hiện đăng video lên Fanpage. Sau đó hãy copy và lưu lại Access Token vừa tạo.

Quay lại ứng dụng Meta Developer, mở Cài đặt ứng dụng → Thông tin cơ bản. Tại đây, chúng ta sẽ lấy hai thông số quan trọng để cấu hình vào phần mềm:

  • ID ứng dụng (App ID): Mã định danh của ứng dụng Facebook.
  • Khóa bí mật của ứng dụng (App Secret): Nhấn Hiển thị, nhập mật khẩu Facebook nếu được yêu cầu để xem và sao chép khóa bí mật.

Sau khi đã có App ID, App SecretPage Access Token ở các bước trước, bạn đã có đầy đủ các thông tin cần thiết để cấu hình ứng dụng và thực hiện đăng video tự động lên Fanpage thông qua Facebook Graph API.

Tuy nhiên, Page Access Token mà chúng ta vừa lấy chỉ là mã truy cập tạm thời, thời gian sử dụng khá ngắn và sẽ nhanh chóng hết hạn. Nếu sử dụng trực tiếp, sau một thời gian ứng dụng sẽ không thể tiếp tục đăng video được.

Để sử dụng ổn định và hạn chế phải cấp quyền lại nhiều lần, bước tiếp theo chúng ta sẽ chuyển đổi sang Long-Lived Access Token (Access Token dài hạn). Sau khi lấy được Long Access Token, chúng ta sẽ dùng token này để tạo lại Page Access Token dài hạn, giúp ứng dụng có thể hoạt động lâu dài và ổn định hơn.

Bước 4: Tiến hành lấy Long Access Token

Tiếp theo, chúng ta sẽ tạo công cụ để lấy Long-Lived Page Access Token.

Mở Notepad hoặc bất kỳ trình soạn thảo văn bản nào, sau đó sao chép toàn bộ đoạn mã mình cung cấp và dán vào cửa sổ soạn thảo.

@echo off
chcp 65001 >nul
setlocal EnableExtensions DisableDelayedExpansion
title Facebook Long-lived Page Token Tool

echo ========================================
echo FACEBOOK LONG-LIVED PAGE TOKEN TOOL
echo ========================================
echo.

set /p APP_ID=Nhap APP_ID:
set /p APP_SECRET=Nhap APP_SECRET:
set /p SHORT_USER_TOKEN=Nhap SHORT_USER_TOKEN:

if "%APP_ID%"=="" (
echo LOI: APP_ID rong.
goto END
)

if "%APP_SECRET%"=="" (
echo LOI: APP_SECRET rong.
goto END
)

if "%SHORT_USER_TOKEN%"=="" (
echo LOI: SHORT_USER_TOKEN rong.
goto END
)

set "GRAPH=https://graph.facebook.com/v25.0"
set "APP_ACCESS_TOKEN=%APP_ID%|%APP_SECRET%"

echo.
echo [1/6] Kiem tra SHORT_USER_TOKEN...

curl.exe -s -G "%GRAPH%/debug_token" ^
--data-urlencode "input_token=%SHORT_USER_TOKEN%" ^
--data-urlencode "access_token=%APP_ACCESS_TOKEN%" ^
-o short_debug.json

powershell -NoProfile -ExecutionPolicy Bypass -Command "$j=Get-Content 'short_debug.json' -Raw | ConvertFrom-Json; if($j.error){Write-Host ('ERROR_MESSAGE=' + $j.error.message); exit 2}; Write-Host ('SHORT_VALID=' + $j.data.is_valid); Write-Host ('SHORT_TYPE=' + $j.data.type); Write-Host ('SHORT_EXPIRES_AT=' + $j.data.expires_at)" > short_info.env

if %errorlevel% neq 0 (
echo LOI: Khong debug duoc SHORT_USER_TOKEN.
type short_debug.json
goto END
)

for /f "usebackq tokens=1,* delims==" %%A in ("short_info.env") do (
set "%%A=%%B"
)

echo SHORT_VALID: %SHORT_VALID%
echo SHORT_TYPE: %SHORT_TYPE%
echo SHORT_EXPIRES_AT: %SHORT_EXPIRES_AT%

if /i not "%SHORT_VALID%"=="True" (
echo LOI: SHORT_USER_TOKEN khong hop le.
type short_debug.json
goto END
)

if /i not "%SHORT_TYPE%"=="USER" (
echo LOI: Token ban nhap khong phai USER token.
echo Hay nhap token o o "Ma truy cap" cua Graph API Explorer.
echo Khong nhap Page token trong ket qua /me/accounts.
type short_debug.json
goto END
)

echo OK: SHORT_USER_TOKEN la USER token hop le.

echo.
echo [2/6] Doi sang LONG_LIVED_USER_TOKEN...

curl.exe -s -G "%GRAPH%/oauth/access_token" ^
--data-urlencode "grant_type=fb_exchange_token" ^
--data-urlencode "client_id=%APP_ID%" ^
--data-urlencode "client_secret=%APP_SECRET%" ^
--data-urlencode "fb_exchange_token=%SHORT_USER_TOKEN%" ^
-o long_user.json

powershell -NoProfile -ExecutionPolicy Bypass -Command "$j=Get-Content 'long_user.json' -Raw | ConvertFrom-Json; if($j.error){Write-Host ('ERROR_MESSAGE=' + $j.error.message); exit 2}; Write-Host ('LONG_USER_TOKEN=' + $j.access_token); Write-Host ('LONG_EXPIRES_IN=' + $j.expires_in)" > long_user.env

if %errorlevel% neq 0 (
echo LOI: Khong doi duoc LONG_LIVED_USER_TOKEN.
type long_user.json
goto END
)

for /f "usebackq tokens=1,* delims==" %%A in ("long_user.env") do (
set "%%A=%%B"
)

if "%LONG_USER_TOKEN%"=="" (
echo LOI: LONG_USER_TOKEN rong.
type long_user.json
goto END
)

echo OK: Da lay LONG_LIVED_USER_TOKEN.
echo expires_in: %LONG_EXPIRES_IN% giay

echo.
echo [3/6] Debug LONG_LIVED_USER_TOKEN...

curl.exe -s -G "%GRAPH%/debug_token" ^
--data-urlencode "input_token=%LONG_USER_TOKEN%" ^
--data-urlencode "access_token=%APP_ACCESS_TOKEN%" ^
-o long_user_debug.json

powershell -NoProfile -ExecutionPolicy Bypass -Command "$j=Get-Content 'long_user_debug.json' -Raw | ConvertFrom-Json; if($j.error){Write-Host ('ERROR: ' + $j.error.message); exit 2}; $d=$j.data; Write-Host ('type: ' + $d.type); Write-Host ('is_valid: ' + $d.is_valid); Write-Host ('expires_at: ' + $d.expires_at); if($d.expires_at){Write-Host ('expires_at_local: ' + [DateTimeOffset]::FromUnixTimeSeconds([int64]$d.expires_at).ToLocalTime().ToString('yyyy-MM-dd HH:mm:ss zzz'))}"

if %errorlevel% neq 0 (
echo LOI: Debug LONG_LIVED_USER_TOKEN that bai.
type long_user_debug.json
goto END
)

echo.
echo [4/6] Lay danh sach Page bang LONG_LIVED_USER_TOKEN...

curl.exe -s -G "%GRAPH%/me/accounts" ^
--data-urlencode "fields=id,name,access_token,tasks" ^
--data-urlencode "access_token=%LONG_USER_TOKEN%" ^
-o pages.json

powershell -NoProfile -ExecutionPolicy Bypass -Command "$j=Get-Content 'pages.json' -Raw | ConvertFrom-Json; if($j.error){Write-Host ('ERROR: ' + $j.error.message); exit 2}; $arr=@($j.data); if($arr.Count -eq 0){Write-Host 'ERROR: Khong tim thay Page nao'; exit 3}; $i=1; foreach($p in $arr){Write-Host ($i.ToString() + '. ' + $p.name + ' - Page ID: ' + $p.id + ' - Tasks: ' + (($p.tasks) -join ',')); $i++}"

if %errorlevel% neq 0 (
echo LOI: Khong lay duoc danh sach Page.
type pages.json
goto END
)

echo.
set /p PAGE_INDEX=Chon so thu tu Page, bo trong = 1:
if "%PAGE_INDEX%"=="" set "PAGE_INDEX=1"

powershell -NoProfile -ExecutionPolicy Bypass -Command "$idx=[int]'%PAGE_INDEX%'; $j=Get-Content 'pages.json' -Raw | ConvertFrom-Json; $arr=@($j.data); if($idx -lt 1 -or $idx -gt $arr.Count){Write-Host 'ERROR_MESSAGE=So thu tu Page khong hop le'; exit 2}; $p=$arr[$idx-1]; Write-Host ('PAGE_ID=' + $p.id); Write-Host ('PAGE_NAME=' + $p.name); Write-Host ('PAGE_ACCESS_TOKEN=' + $p.access_token); Write-Host ('PAGE_TASKS=' + (($p.tasks) -join ','))" > selected_page.env

if %errorlevel% neq 0 (
echo LOI: Chon Page that bai.
type selected_page.env
goto END
)

for /f "usebackq tokens=1,* delims==" %%A in ("selected_page.env") do (
set "%%A=%%B"
)

if "%PAGE_ACCESS_TOKEN%"=="" (
echo LOI: Khong lay duoc PAGE_ACCESS_TOKEN.
type selected_page.env
goto END
)

echo.
echo Page da chon: %PAGE_NAME%
echo Page ID: %PAGE_ID%
echo Tasks: %PAGE_TASKS%

echo.
echo [5/6] Debug PAGE_ACCESS_TOKEN...

curl.exe -s -G "%GRAPH%/debug_token" ^
--data-urlencode "input_token=%PAGE_ACCESS_TOKEN%" ^
--data-urlencode "access_token=%APP_ACCESS_TOKEN%" ^
-o page_debug.json

powershell -NoProfile -ExecutionPolicy Bypass -Command "$j=Get-Content 'page_debug.json' -Raw | ConvertFrom-Json; if($j.error){Write-Host ('ERROR_MESSAGE=' + $j.error.message); exit 2}; $d=$j.data; Write-Host ('PAGE_VALID=' + $d.is_valid); Write-Host ('PAGE_TYPE=' + $d.type); Write-Host ('PAGE_EXPIRES_AT=' + $d.expires_at); Write-Host ('PAGE_PROFILE_ID=' + $d.profile_id); Write-Host ('PAGE_DATA_ACCESS_EXPIRES_AT=' + $d.data_access_expires_at)" > page_debug.env

if %errorlevel% neq 0 (
echo LOI: Debug PAGE_ACCESS_TOKEN that bai.
type page_debug.json
goto END
)

for /f "usebackq tokens=1,* delims==" %%A in ("page_debug.env") do (
set "%%A=%%B"
)

echo.
echo PAGE TOKEN DEBUG:
echo is_valid: %PAGE_VALID%
echo type: %PAGE_TYPE%
echo profile_id: %PAGE_PROFILE_ID%
echo expires_at: %PAGE_EXPIRES_AT%
echo data_access_expires_at: %PAGE_DATA_ACCESS_EXPIRES_AT%

powershell -NoProfile -ExecutionPolicy Bypass -Command "$exp='%PAGE_EXPIRES_AT%'; if($exp -eq '0'){Write-Host 'expires_at_local: Never / khong co han co dinh'} elseif($exp -match '^\d+$'){Write-Host ('expires_at_local: ' + [DateTimeOffset]::FromUnixTimeSeconds([int64]$exp).ToLocalTime().ToString('yyyy-MM-dd HH:mm:ss zzz'))}"

echo.
echo [6/6] Ket luan...

if /i not "%PAGE_VALID%"=="True" (
echo LOI: Page token khong hop le.
goto SAVE_RESULT
)

if /i not "%PAGE_TYPE%"=="PAGE" (
echo LOI: Token lay duoc khong phai PAGE token.
goto SAVE_RESULT
)

echo %PAGE_TASKS% > page_tasks_check.txt
findstr /i "CREATE_CONTENT" page_tasks_check.txt >nul
if %errorlevel% neq 0 (
echo LOI: Page token thieu CREATE_CONTENT, co the khong dang video duoc.
goto SAVE_RESULT
)

if "%PAGE_EXPIRES_AT%"=="0" (
echo OK: DAY LA LONG-LIVED PAGE ACCESS TOKEN. expires_at = 0 / Never.
) else (
powershell -NoProfile -ExecutionPolicy Bypass -Command "$exp=[int64]'%PAGE_EXPIRES_AT%'; $now=[DateTimeOffset]::UtcNow.ToUnixTimeSeconds(); $days=[Math]::Round(($exp-$now)/86400,2); if($days -gt 30){Write-Host ('OK: Page token co han xa, con khoang ' + $days + ' ngay.')} elseif($days -gt 0){Write-Host ('CAN LUU Y: Page token con song nhung chua dai han, con khoang ' + $days + ' ngay.')} else {Write-Host 'LOI: Page token da het han.'}"
)

:SAVE_RESULT
echo.
echo Dang luu ket qua vao facebook_page_token_result.json...

powershell -NoProfile -ExecutionPolicy Bypass -Command "$out=[ordered]@{created_at=(Get-Date).ToString('yyyy-MM-dd HH:mm:ss zzz'); app_id='%APP_ID%'; long_lived_user_token='%LONG_USER_TOKEN%'; long_lived_user_token_expires_in='%LONG_EXPIRES_IN%'; page_id='%PAGE_ID%'; page_name='%PAGE_NAME%'; page_access_token='%PAGE_ACCESS_TOKEN%'; page_tasks='%PAGE_TASKS%'; page_token_is_valid='%PAGE_VALID%'; page_token_type='%PAGE_TYPE%'; page_token_expires_at='%PAGE_EXPIRES_AT%'; page_token_profile_id='%PAGE_PROFILE_ID%'}; $out | ConvertTo-Json -Depth 5 | Set-Content 'facebook_page_token_result.json' -Encoding UTF8"

echo.
echo ========================================
echo HOAN TAT
echo File ket qua: facebook_page_token_result.json
echo File nay co chua token that, khong gui cho nguoi khac.
echo ========================================

goto END


:END
echo.
del short_debug.json >nul 2>nul
del short_info.env >nul 2>nul
del long_user.json >nul 2>nul
del long_user.env >nul 2>nul
del long_user_debug.json >nul 2>nul
del pages.json >nul 2>nul
del selected_page.env >nul 2>nul
del page_debug.json >nul 2>nul
del page_debug.env >nul 2>nul
del page_tasks_check.txt >nul 2>nul

echo Nhan phim bat ky de thoat...
pause >nul

Tiếp theo, chọn File → Save As…, tại mục Save as type chọn All Files (.), đặt tên file là: Get_Long_Page_Token.bat

và nhấn Save để lưu.

Sau khi tạo xong, nhấp đúp vào file Get_Long_Page_Token.bat để chạy. Một cửa sổ Command Prompt (CMD) sẽ xuất hiện và lần lượt yêu cầu nhập các thông tin:

  • APP_ID: Dán ID ứng dụng (App ID).
  • APP_SECRET: Dán Khóa bí mật của ứng dụng (App Secret).
  • SHORT_USER_TOKEN: Dán User Access Token vừa lấy từ Graph API Explorer.

Sau khi nhập đầy đủ, chương trình sẽ tự động chuyển đổi sang Long-Lived User Access Token, lấy danh sách Fanpage, yêu cầu bạn chọn Fanpage cần sử dụng, sau đó tạo và kiểm tra Long-Lived Page Access Token.

Khi quá trình hoàn tất, công cụ sẽ tạo file facebook_page_token_result.json trong cùng thư mục. Mở file này và sao chép giá trị page_access_token, đây chính là Long-Lived Page Access Token để cấu hình vào phần mềm. Token này có thời gian sử dụng lâu hơn nhiều so với token tạm thời và phù hợp để sử dụng lâu dài.

mã này các bạn hoàn toàn có thể sử dụng cho phần mềm MMO AUTO TRANSLATE STUDIO  để sử dụng tính năng đăng video tự động lên fanpage facebook sau khi thuyết minh xong.

 

X
Chat với MMO SOFTWARE
Xin chào, Bạn có nhu cầu mua tool, vui lòng nhập nội dung vào đây, chúng tôi ...
Hỏi chúng tôi