Files
tripz-llc/scripts/publish-now.js
T
2026-07-24 16:07:06 +03:00

55 lines
2.4 KiB
JavaScript

#!/usr/bin/env node
/**
* Direct Live Publishing Script for Facebook Page
*/
const USER_TOKEN = process.env.META_ACCESS_TOKEN || 'EAAM8GXpb76wBSCcthLkKMySDBEMP6mCxl1yIeNnPUQ4oSmO15L56TRWPh5LZBfAPJmtYYzPIul5QeogjTvcVrwg4FrTxfZAkxB0kEgjONeUYH5QzTHUYkbfW9N2GyUDsPIke0esrxvfnLXU5Vm4wdJ7pCpyNZB3nnN00Ek4ngriwWsGWZBP9HZCPAMMPFVfH6LVdZAcyl8f31rNYKsL2vp0IZClMVWuNoif6Jlr3SRmfD1tnPIuFz3BnPDp2ymXXVAqsLc2c5rX5EgtkrdMdGdu';
const PAGE_ID = process.env.META_PAGE_ID || '61588173848643';
const message = `شركتك تحمل اسمك… وتطبيقك يحمل اسم غيرك؟ 🚘📱
كل رحلة ينفذها أسطولك اليوم تبني علامة شركة أخرى. في Tripz نطلق لك منصة نقل متكاملة باسمك، بلونك، وبشعارك خلال 30 يوماً فقط!
🔹 تطبيق الراكب 🔹 تطبيق السائق 🔹 لوحة التحكم و Dispatch
✅ بياناتك ملكك بعقد مكتوب
✅ شفافية مطلقة بأسعار معلنة
✅ محرك مجرّب وسريع منذ 2019
📊 احسب توفيرك السنوي: https://tripz-egypt.com/apps/
💬 تواصل معنا عبر واتساب: https://wa.me/962798583052`;
async function getPageDetails(userToken, targetPageId) {
try {
const url = `https://graph.facebook.com/v19.0/me/accounts?access_token=${userToken}`;
const res = await fetch(url);
const data = await res.json();
if (data.data && Array.isArray(data.data) && data.data.length > 0) {
const pageObj = data.data.find(p => p.id === targetPageId) || data.data[0];
if (pageObj && pageObj.access_token) {
console.log(`Found Page Access Token for Page: ${pageObj.name} (${pageObj.id})`);
return { token: pageObj.access_token, pageId: pageObj.id, pageName: pageObj.name };
}
}
} catch (e) {}
return { token: userToken, pageId: targetPageId, pageName: 'Default' };
}
async function main() {
const pageDetails = await getPageDetails(USER_TOKEN, PAGE_ID);
console.log(`Publishing post to Facebook Page: ${pageDetails.pageName} (${pageDetails.pageId}) ...`);
const url = `https://graph.facebook.com/v19.0/${pageDetails.pageId}/feed`;
const res = await fetch(url, {
method: 'POST',
headers: { 'Content-Type': 'application/json' },
body: JSON.stringify({
access_token: pageDetails.token,
message: message
})
});
const data = await res.json();
console.log('Response from Meta:', JSON.stringify(data, null, 2));
}
main();