Merge pull request #480 from bipproduction/amalia/01-jul-25

upd: fcm modifikasi
This commit is contained in:
Amalia
2025-07-02 10:14:36 +08:00
committed by GitHub
3 changed files with 24 additions and 30 deletions

View File

@@ -101,10 +101,15 @@ export async function GET(request: Request) {
})) }))
// await sendFCMNotification('c89yuexsS_uc1tOErVPu5a:APA91bEb6tEKXAfReZjFVJ2mMyOzoW_RXryLSnSJTpbIVV3G0L_DCNkLuRvJ02Ip-Erz88QCQBAt-C2SN8eCRxu3-v1sBzXzKPtDv-huXpkjXsyrkifqvUo') // await sendFCMNotification('c89yuexsS_uc1tOErVPu5a:APA91bEb6tEKXAfReZjFVJ2mMyOzoW_RXryLSnSJTpbIVV3G0L_DCNkLuRvJ02Ip-Erz88QCQBAt-C2SN8eCRxu3-v1sBzXzKPtDv-huXpkjXsyrkifqvUo')
await sendFCMNotificationMany([ await sendFCMNotificationMany({
token: [
'c89yuexsS_uc1tOErVPu5a:APA91bEb6tEKXAfReZjFVJ2mMyOzoW_RXryLSnSJTpbIVV3G0L_DCNkLuRvJ02Ip-Erz88QCQBAt-C2SN8eCRxu3-v1sBzXzKPtDv-huXpkjXsyrkifqvUo', 'c89yuexsS_uc1tOErVPu5a:APA91bEb6tEKXAfReZjFVJ2mMyOzoW_RXryLSnSJTpbIVV3G0L_DCNkLuRvJ02Ip-Erz88QCQBAt-C2SN8eCRxu3-v1sBzXzKPtDv-huXpkjXsyrkifqvUo',
'cRz96GHKTRaQaRJ35e8Hxa:APA91bEUSxE0VPbqKSzseQ_zGhbYsDofMexKykRw7o_3z2aPM9YFmZbeA2enrmb3qjdZ2g4-QQtiNHAyaZqAT1ITOrwo9jVJlShTeABmEFYP5GLEUZ3dlLc' 'cRz96GHKTRaQaRJ35e8Hxa:APA91bEUSxE0VPbqKSzseQ_zGhbYsDofMexKykRw7o_3z2aPM9YFmZbeA2enrmb3qjdZ2g4-QQtiNHAyaZqAT1ITOrwo9jVJlShTeABmEFYP5GLEUZ3dlLc'
]) ],
title: "Judul Notifikasi Pengumuman",
body: "Pengumuman untuk perangkat",
data: { id: "cm1eqwkwj00067j2bzejyh9u7", category: "division", content: "cm1eqwkvu00017j2b8qnisp9g" }
})
return NextResponse.json({ success: true, message: "Berhasil mendapatkan pengumuman", data: allData, }, { status: 200 }); return NextResponse.json({ success: true, message: "Berhasil mendapatkan pengumuman", data: allData, }, { status: 200 });
} catch (error) { } catch (error) {

View File

@@ -6,16 +6,15 @@ const ApiV2 = new elysia({
prefix: "/api/mobile/fcm" prefix: "/api/mobile/fcm"
}) })
.get("/", async () => { .get("/", async () => {
await sendFCMNotificationMany({
const token = [ token: [
'c89yuexsS_uc1tOErVPu5a:APA91bEb6tEKXAfReZjFVJ2mMyOzoW_RXryLSnSJTpbIVV3G0L_DCNkLuRvJ02Ip-Erz88QCQBAt-C2SN8eCRxu3-v1sBzXzKPtDv-huXpkjXsyrkifqvUo', 'c89yuexsS_uc1tOErVPu5a:APA91bEb6tEKXAfReZjFVJ2mMyOzoW_RXryLSnSJTpbIVV3G0L_DCNkLuRvJ02Ip-Erz88QCQBAt-C2SN8eCRxu3-v1sBzXzKPtDv-huXpkjXsyrkifqvUo',
'cRz96GHKTRaQaRJ35e8Hxa:APA91bEUSxE0VPbqKSzseQ_zGhbYsDofMexKykRw7o_3z2aPM9YFmZbeA2enrmb3qjdZ2g4-QQtiNHAyaZqAT1ITOrwo9jVJlShTeABmEFYP5GLEUZ3dlLc' 'cRz96GHKTRaQaRJ35e8Hxa:APA91bEUSxE0VPbqKSzseQ_zGhbYsDofMexKykRw7o_3z2aPM9YFmZbeA2enrmb3qjdZ2g4-QQtiNHAyaZqAT1ITOrwo9jVJlShTeABmEFYP5GLEUZ3dlLc'
] ],
// await sendFCMNotification('c89yuexsS_uc1tOErVPu5a:APA91bEb6tEKXAfReZjFVJ2mMyOzoW_RXryLSnSJTpbIVV3G0L_DCNkLuRvJ02Ip-Erz88QCQBAt-C2SN8eCRxu3-v1sBzXzKPtDv-huXpkjXsyrkifqvUo') title: "Judul Notifikasi Pengumuman",
await sendFCMNotificationMany([ body: "Pengumuman untuk perangkat",
'c89yuexsS_uc1tOErVPu5a:APA91bEb6tEKXAfReZjFVJ2mMyOzoW_RXryLSnSJTpbIVV3G0L_DCNkLuRvJ02Ip-Erz88QCQBAt-C2SN8eCRxu3-v1sBzXzKPtDv-huXpkjXsyrkifqvUo', data: { id: "cm1eqwkwj00067j2bzejyh9u7", category: "division", content: "cm1eqwkvu00017j2b8qnisp9g" }
'cRz96GHKTRaQaRJ35e8Hxa:APA91bEUSxE0VPbqKSzseQ_zGhbYsDofMexKykRw7o_3z2aPM9YFmZbeA2enrmb3qjdZ2g4-QQtiNHAyaZqAT1ITOrwo9jVJlShTeABmEFYP5GLEUZ3dlLc' })
])
return { return {
data: "success elysia" data: "success elysia"
}; };

View File

@@ -7,7 +7,7 @@ const enc = "U2FsdGVkX1+ATdSSI7vdTGLCA8f6WjifHPoesp/SXL2VtKVRV4QkKjrU/CYBxWyA48n
const decrypt = CryptoJs.AES.decrypt(enc, "amal").toString(CryptoJs.enc.Utf8) const decrypt = CryptoJs.AES.decrypt(enc, "amal").toString(CryptoJs.enc.Utf8)
// Fungsi untuk mengirim notifikasi FCM // Fungsi untuk mengirim notifikasi FCM
export async function sendFCMNotificationMany(token: string[]) { export async function sendFCMNotificationMany({ token, title, body, data }: { token: string[], title: string, body: string, data: { id: string, category: string, content: string } }) {
// const serviceAccount = await fs.readFile(path.join(process.cwd(), "key.json")); // const serviceAccount = await fs.readFile(path.join(process.cwd(), "key.json"));
if (getApps().length === 0) { if (getApps().length === 0) {
initializeApp({ initializeApp({
@@ -19,16 +19,11 @@ export async function sendFCMNotificationMany(token: string[]) {
// Konfigurasi pesan // Konfigurasi pesan
const message = { const message = {
notification: { notification: {
title: "Notifikasi Many Encrypted api downgrade", title,
body: "Isi notifikasi ke banyak device key diencrypt dan api downgrade", body,
}, },
token, token,
data: { data,
id: 'cm1eqwkwj00067j2bzejyh9u7',
category: 'division',
content: 'cm1eqwkvu00017j2b8qnisp9g',
},
// Opsional: konfigurasi Android
android: { android: {
priority: "high", priority: "high",
notification: { notification: {
@@ -58,8 +53,3 @@ export async function sendFCMNotificationMany(token: string[]) {
throw error; throw error;
} }
} }
// sendFCMNotificationMany([
// 'c89yuexsS_uc1tOErVPu5a:APA91bEb6tEKXAfReZjFVJ2mMyOzoW_RXryLSnSJTpbIVV3G0L_DCNkLuRvJ02Ip-Erz88QCQBAt-C2SN8eCRxu3-v1sBzXzKPtDv-huXpkjXsyrkifqvUo',
// 'cRz96GHKTRaQaRJ35e8Hxa:APA91bEUSxE0VPbqKSzseQ_zGhbYsDofMexKykRw7o_3z2aPM9YFmZbeA2enrmb3qjdZ2g4-QQtiNHAyaZqAT1ITOrwo9jVJlShTeABmEFYP5GLEUZ3dlLc'
// ])