我通过fcm xmpp客户端发送以下消息。但是我没有收到交付邮件的送货回执。
我使用node-xcs
节点包发送XMPP消息。
var Sender = require('node-xcs').Sender;
var Message = require('node-xcs').Message;
var Notification = require('node-xcs').Notification;
var Result = require('node-xcs').Result;
var xcs = new Sender('123', 'xxxx', 1);
const uuidv4 = require('uuid/v4');
xcs.on('message', function(messageId, from, data, category) {
console.log('received message', arguments);
});
xcs.on('receipt', function(messageId, from, data, category){
console.log(messageId,'dsafdsafdsaf')
});
xcs.on('connected', function(){console.log('connected')});
xcs.on('disconnected', function(){console.log('disconnected')});
xcs.on('online', function(){console.log('online')});
xcs.on('error', console.error);
xcs.on('message-error', function(){console.log('message-error')});
var notification = new Notification("./logo.png")
.title("Hello buddy!")
.clickAction("https://github.com/guness/node-xcs/blob/master/google/Notification.js")
.body("test_body")
.build();
var message = new Message(uuidv4())
.priority("high")
.dryRun(false)
.deliveryReceiptRequested(true)
.notification(notification)
.build();
xcs.sendNoRetry(message, 'token', function(result) {
if (result.getError()) {
console.error(result.getErrorDescription());
} else {
console.log("message sent: #" + result.getMessageId());
}
});
以下是从包
发送的XMPP消息<gcm xmlns="google:mobile:data">{
"to": "token",
"message_id": "59171fc6-42ad-4f22-812f-d0c4f7fa63d0",
"priority": "high",
"delivery_receipt_requested": true,
"notification": {
"body": "test_body",
"click_action": "https://github.com/guness/node-xcs/blob/master/google/Notification.js",
"icon": "./logo.png",
"title": "Hello buddy!"
}
}</gcm>
我收到ack
,但我没有收到送货回执,为什么即使邮件已送达,送货回执也没有到来?
答案 0 :(得分:0)
node-xcs基于node-gcm-ccs的作品,并且没有适当维护。
请参阅node-xcs最后的免责声明
您甚至无法向ios设备发送通知,因为它仅是为了支持将FCM发送到android和Web设备而构建的。
请参见here,它说它不是用非常粗体的字母表示的。
我建议使用fcm-push而不是使用node-xcs
去年,我在使用此库时遇到了类似的问题,在阅读了这些非常大胆的消息“ NOT MAINTAINED NOT MAINTAINED NOT MAINTAINED”后,我切换到了fcm-push。