Firebase Admin SDK를 사용한 Push 알림
개시하다
Firebase Cloud Messageing(FCM)을 이용해 서버에서 스마트폰으로Push를 알리려 한다.Firebase를 통해 서버에서 Push 알림을 보내는 방법을 씁니다.구체적으로 말하면 아래 그림의 빨간 상자의 범위다.
컨디션
차리다
설치 - Frebase Admin SDK
$ pip install firebase-admin
$ pip install firebase-admin
Firebase concel에서 연결할 키 파일을 가져옵니다.
특정 스마트폰 Push 알림
특정 스마트폰(YOUR REGISTRATION TOKYEN)에 푸시 알림을 보낸다.
코드는 다음과 같습니다.path/to/serviceAccountKey.json
다운로드한 개인 키 파일을 지정합니다.import firebase_admin
from firebase_admin import credentials
from firebase_admin import messaging
cred = credentials.Certificate("path/to/serviceAccountKey.json")
firebase_admin.initialize_app(cred)
# This registration token comes from the client FCM SDKs.
registration_token = 'YOUR_REGISTRATION_TOKEN'
# See documentation on defining a message payload.
message = messaging.Message(
notification=messaging.Notification(
title='test server',
body='test server message',
),
token=registration_token,
)
# Send a message to the device corresponding to the provided
# registration token.
response = messaging.send(message)
# Response is a message ID string.
print('Successfully sent message:', response)
YOUR_REGISTRATION_TOKEN
ios의 경우 아래의 SWFT 코드를 사용하여 얻은 모든 단말기의 영패(result.token)입니다.InstanceID.instanceID().instanceID { (result, error) in
if let error = error {
print("Error fetching remote instance ID: \(error)")
} else if let result = result {
print("Remote instance ID token: \(result.token)")
self.instanceID.text = "Remote InstanceID token: \(result.token)"
}
}
Push 알림 참여 핸드폰
특정 이슈에 참여한 여러 스마트폰에 퍼시를 알리는 방법이다.
예를 들어'weather'이슈에 참여한 스마트폰에 Push를 알릴 때
다음은 메시지의 생성 부분을 변경합니다.
구체적으로 token
분만 topic
로 변경했다.message = messaging.Message(
notification=messaging.Notification(
title='test server',
body='test server message',
),
topic='weather',
)
다음 코드를 통해ios에서 화제에 참여할 수 있습니다.Messaging.messaging().subscribe(toTopic: "weather") { error in
print("Subscribed to weather topic")
}
참고 문헌
import firebase_admin
from firebase_admin import credentials
from firebase_admin import messaging
cred = credentials.Certificate("path/to/serviceAccountKey.json")
firebase_admin.initialize_app(cred)
# This registration token comes from the client FCM SDKs.
registration_token = 'YOUR_REGISTRATION_TOKEN'
# See documentation on defining a message payload.
message = messaging.Message(
notification=messaging.Notification(
title='test server',
body='test server message',
),
token=registration_token,
)
# Send a message to the device corresponding to the provided
# registration token.
response = messaging.send(message)
# Response is a message ID string.
print('Successfully sent message:', response)
InstanceID.instanceID().instanceID { (result, error) in
if let error = error {
print("Error fetching remote instance ID: \(error)")
} else if let result = result {
print("Remote instance ID token: \(result.token)")
self.instanceID.text = "Remote InstanceID token: \(result.token)"
}
}
특정 이슈에 참여한 여러 스마트폰에 퍼시를 알리는 방법이다.
예를 들어'weather'이슈에 참여한 스마트폰에 Push를 알릴 때
다음은 메시지의 생성 부분을 변경합니다.
구체적으로
token
분만 topic
로 변경했다.message = messaging.Message(
notification=messaging.Notification(
title='test server',
body='test server message',
),
topic='weather',
)
다음 코드를 통해ios에서 화제에 참여할 수 있습니다.Messaging.messaging().subscribe(toTopic: "weather") { error in
print("Subscribed to weather topic")
}
참고 문헌
Reference
이 문제에 관하여(Firebase Admin SDK를 사용한 Push 알림), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/KenNagami/items/f9316b040aed0a5abc22텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)