如何从服务器向ios设备发送静默通知?

时间:2017-01-20 13:09:22

标签: python ios django apple-push-notifications firebase-cloud-messaging

这是我的python脚本,它将fcm通知发送给设备。

它发送优先通知而非静默通知.... 我怎么能让他们沉默?

def sendGCMToTopiciOS():
    url = 'https://fcm.googleapis.com/fcm/send'
    headers = {
        'UserAgent': "GCM-Server",
        'Content-Type': 'application/json',

        'Authorization': 'key=' + 'XXXXXXXXXXXXXXXXXXXX',
    }

    data = {'title': 'Yugam', 'message': 'Hello Everyone', 'event': '13', 'workshop': '-1',
            'link': 'https://www.google.com'}

    notification = {
        'body': data.get('message'),
        'title': data.get('title')
    }

    values = {

        'to': '/topics/' + 'global',
        'data': data,
        'notification': notification,

         "aps":{
             "content-available":1}

    }

    pipe = requests.post(url=url, json=values, headers=headers)
    return pipe.json()

2 个答案:

答案 0 :(得分:0)

要发送数据消息,您需要跳过json有效负载的local iseither iseither = setmetatable({},{ __sub = function(arg1,arg2) if arg2 == iseither then arg2.Value = arg1 return arg2 else if type(arg2) ~= "table" then error("Second operator is -iseither- was not a table",2) else for i,v in ipairs(arg2) do if arg1.Value == v then arg1.Value = nil return true end end arg1.Value = nil return false end end end }) print(1 -iseither- {1,2,3,4,5}) 部分

答案 1 :(得分:0)

'通知'字段将导致iOS 10将您的通知发送到系统,根据给定的值自动显示通知。如果您正在寻找完全无声的通知,请尝试:

values = {
    'to': '/topics/' + 'global',
    'content_available': true
    'priority': 'high',
    'data': data
}

这将在没有警报的情况下在后台传送。 ' content_available'字段也会在通过APM的GCM服务器后转换为' content-available':1。