我正在我的python項目上工作,我需要爲apns和fcm/gcm創建我自己的推送通知服務器,它向ios和android發送推送通知同時,我瀏覽了Firebase文檔,但是網站上沒有代碼示例。任何人都可以給我一個關於如何在Python代碼中完成這個的想法嗎?Python - 推送通知通過FCM/APN到IOS或Android設備
1
A
回答
0
我掙扎了一會兒,所以我想我會發布最終爲我工作的代碼。所有你需要做的是做從谷歌oauth2client畫中畫安裝(https://github.com/google/oauth2client):
PIP安裝oauth2client現在
,你將需要進口,這將您生成一個短暫的服務帳戶令牌,您可以在您的API中使用,以便您的應用服務器可以與FCM Google服務器進行通信。
請通過以下網址的指示:現在
https://firebase.google.com/docs/cloud-messaging/auth-server
from oauth2client.service_account import ServiceAccountCredentials
def _get_access_token():
"""Retrieve a valid access token that can be used to authorize requests.
:return: Access token.
"""
credentials = ServiceAccountCredentials.from_json_keyfile_name(
'service-account.json', FCM_SCOPE)
access_token_info = credentials.get_access_token()
return access_token_info.access_token
,一旦你有short_lived令牌,你可以在你的API中使用它要求將消息發送到你的Android/IOS設備:
import requests, json
values = {"message":{"token":"<insert android firebase token id here>","notification":{"body":"This is a Firebase Cloud Messaging Topic Message for testing!","title":"FCM Message!!"}}}
header ={ 'Content-Length': '33333', 'Content-Type': 'application/json; UTF-8', 'Authorization': 'Bearer ' + _get_access_token(), 'User-Agent': 'Mozilla/5.0'}
url = 'https://fcm.googleapis.com/v1/projects/<insert project name here>/messages:send'
print(header)
r = requests.post(url, data=json.dumps(values), headers=header)
print(r.text)
如果調用成功,您將收到您的FCM消息引用的屏幕上的打印,您剛纔發:
{
"name": "projects/<your project name>/messages/0:1519633952417262%0958967209589672"
}
相關問題
- 1. 發送推送通知到iOS設備
- 2. 嘗試將推送通知發送到iOS設備 - 未收到推送通知
- 3. 推送通知到iOS設備
- 4. ios設備收到的推送通知
- 5. 如何區分Android或iOS設備發送推送通知?
- 6. Worklight 6.3通過GCM推送通知未達到android設備
- 7. 推送通知iOS添加設備
- 8. ios推送通知多個設備
- 9. Xamarin.Forms - 推送通知 - iOS設備
- 10. 發送GCM推送通知到設備
- 11. 無法通過APNS將MDM推送通知發送到設備。
- 12. 設置AWS SNS將推送通知發送到iOS設備
- 13. 通過通用代碼推送通知到各種設備
- 14. Android設備特定推送通知
- 15. Laravel 5發送推送通知給android和ios設備
- 16. 如何通過Firebase將設備發送到設備推送通知
- 17. 推送通知沒有達到設備
- 18. iOS發送推送通知到一次更多的設備PHP
- 19. 如何將推送通知發送到多個設備(iOS)?
- 20. 通過node.js發送android推送通知
- 21. 設備關閉或不在網絡時的IOS推送通知
- 22. Carriot推送通知到iOS
- 23. Django推送通知到IOS
- 24. 通過GCM將安靜通知推送到Android/IOS
- 25. 設置推送通知android
- 26. iOS通過AWS SNS推送通知
- 27. 無法在android/ios設備上接收推送通知
- 28. 直接從設備發送蘋果推送通知到設備
- 29. 推送通知IOS
- 30. 推送通知IOS