const admin = require('firebase-admin'); function initFirebase() { try { if (!process.env.FIREBASE_SERVICE_ACCOUNT) { console.error("FCM Error: FIREBASE_SERVICE_ACCOUNT secret topilmadi!"); return false; } const serviceAccount = JSON.parse(process.env.FIREBASE_SERVICE_ACCOUNT); admin.initializeApp({ credential: admin.credential.cert(serviceAccount) }); console.log("Firebase Admin SDK muvaffaqiyatli ulandi!"); return true; } catch (e) { console.error("Firebase ulanish xatosi:", e.message); return false; } } async function sendPushToAll(title, message, imageUrl = null) { if (!admin.apps.length) { console.error("FCM ulanmagan!"); return { success: false, error: "FCM ulanmagan" }; } const payload = { notification: { title: title, body: message, image: imageUrl || undefined }, topic: "promo" }; try { const response = await admin.messaging().send(payload); return { success: true, response }; } catch (error) { console.error("Push yuborishda xatolik:", error); return { success: false, error: error.message }; } } module.exports = { initFirebase, sendPushToAll };