此处记录了Apigee的推送通知。 http://apigee.com/docs/api-baas/content/introducing-push-notifications
我尝试使用Apigee在这里提供的js sdk http://apigee.com/docs/app-services/content/installing-apigee-sdk-javascript。看起来只有客户端可以自己生成通知?
但我有一个场景,我想从每小时运行一次的nodejs作业向多个客户端发送通知。像这样的东西,但来自nodejs sdk而不是来自js sdk。
var devicePath =" devices; ql = * / notifications&#34 ;;
我该怎么做?
答案 0 :(得分:1)
如上所述,您可以使用usergrid模块(https://www.npmjs.com/package/usergrid)执行此操作。
您基本上是在尝试构建一个看起来像这样的API调用(通过引用设备发送消息):
https://api.usergrid.com/myorg/myapp/devices/deviceUUID/notifications?access_token= access_token_goes_here' {"有效负载":{" androidDev":" Hello World !!"}}&#39 ;
或者像这样(通过引用连接到设备的用户发送消息) https://api.usergrid.com/myorg/myapp/users/fred/notifications?access_token=access_token_goes_here' {"有效负载":{" androidDev":" Hello World !!"}}'
您可以使用类似下面的代码执行此操作:
var options = {
method:'POST',
endpoint:'devices/deviceUUID/notifications',
body:{ 'payloads':{'androidDev':'Hello World!!'} }
};
client.request(options, function (err, data) {
if (err) {
//error - POST failed
} else {
//data will contain raw results from API call
//success - POST worked
}
});
或
var options = {
method:'POST',
endpoint:'users/fred/notifications',
body:{ 'payloads':{'androidDev':'Hello World!!'} }
};
client.request(options, function (err, data) {
if (err) {
//error - POST failed
} else {
//data will contain raw results from API call
//success - POST worked
}
});
注意:发布到users / username / notifications端点的第二个调用假设您已经在用户和他们的设备之间建立了连接(例如POST / users / fred / devices / deviceUUID)。