💻

FireBase Notification 서버 설정(Node JS)

D A S H B O A R D
D E V E L O P
S E C U R I T Y
Mobile의 flutter push Notifircation 참고
const schedule = require('node-schedule'); const admin = require('firebase-admin'); var serviceAccount = require("{firebase 콘솔에서 받은 server용 json파일}"); var certPath = admin.credential.cert(serviceAccount) admin.initializeApp({ credential : certPath }); //알림 보내기 1분마다 동작하는 스케줄링 코드 schedule.scheduleJob(' */1 * * * *', function () { //... //원하는 로직..... notificationHandler(when, token ) }) // 내 서버 예시로 자신의 알림 로직에 맞게 변경해야함 function notificationHandler(when, token){ //... //원하는 로직..... console.log("send") sendPushNotification(token, "제목", "내용"); } function sendPushNotification(target_token, title, body) { //target_token은 푸시 메시지를 받을 디바이스의 토큰값입니다 let message = { notification: { title: title, body: body, }, data: { route: 'main' // flutter 환경에서 알림 클릭시 라우팅 해주기 위한 데이터 없어도 됨 }, android:{ priority:"high", notification: { channelId: //firebase Channel ID(android_channel_id) } }, token: target_token, apns: { payload: { aps: {// 얘네는 IOS 설정인데 웬만하면 유지하되 잘 찾아보고 설정하는 것을 추천한다. badge: 2.0, "apns-priority": 5, sound: 'default' }, }, }, } admin.messaging().send(message) .then(()=> { console.log("success"); }) }
JavaScript
복사