Android
import firebase_admin
from firebase_admin import credentials, messaging
# Firebase 프로젝트의 서비스 계정 키 파일로 Firebase Admin 초기화
cred = credentials.Certificate('path/to/fcm-signkey.json')
firebase_admin.initialize_app(cred)
# 메시지 정의
message = messaging.Message(
data={
'score': '850',
'time': '2:45',
},
notification=messaging.Notification(
title='Match update',
body='Arsenal vs Chelsea',
),
android=messaging.AndroidConfig(
priority='high', # 우선순위 설정: 'high' 또는 'normal'
notification=messaging.AndroidNotification(
icon='stock_ticker_update',
color='#f45342'
),
),
token='recipient_device_token',
)
# 메시지 보내기
response = messaging.send(message)
print('Successfully sent message:', response)
iOS
import firebase_admin
from firebase_admin import credentials, messaging
# Firebase 초기화
if not firebase_admin._apps:
cred = credentials.Certificate('path/to/your/fcm-signkey.json')
firebase_admin.initialize_app(cred)
# APNs 설정을 포함한 메시지 정의
message = messaging.Message(
notification=messaging.Notification(
title='Match update',
body='Arsenal vs Chelsea',
),
apns=messaging.APNSConfig(
headers={
'apns-priority': '10', # '10'은 즉시 배달, '5'는 전력 효율적 배달
},
payload=messaging.APNSPayload(
aps=messaging.Aps(
alert=messaging.ApsAlert(
title='Match update',
body='Arsenal vs Chelsea',
),
sound='default',
),
),
),
token='recipient_device_token',
)
# 메시지 보내기
response = messaging.send(message)
print('Successfully sent message:', response)
댓글