2019年12月4日 星期三

使用python透過firebase發送ios推播

為了簡化推播的困難度,通常會透過firebase等平台進行推播,以下為一段透過firebase後台送出推播到ios機器的sample:

from urllib import request
import json

to = <fmc token>
url = 'https://fcm.googleapis.com/fcm/send'
key = <firebase key>

headers = {
'Content-Type' : 'application/json',
'Authorization' : 'key=' + key,
}

data = {
  "to": to,
  "content_available" : True,
  "data": {
      'info' : 'data to background mode',
    },
  'notification' : {
    'title' : 'this is title',
    'body' : 'this is body',
  },
}

dataJson = json.dumps(data).encode('utf-8')

r = request.Request(url, dataJson, headers = headers)
result = request.urlopen(r)
result.getcode()

詳細的payload內容可以參考firebase的說明網頁:

Firebase Cloud Messaging HTTP protocol
https://firebase.google.com/docs/cloud-messaging/http-server-ref