如何使用 Quickblox 在 Cordova 应用程序中实现推送通知支持?
How to implement push notification support in Cordova app using Quickblox?
对于这样一个基本问题深表歉意,但我真的找不到关于这个主题的任何信息。
Quickblox Javascript SDK 有一些与推送通知相关的 类,我已使用 chat_history 和聊天中的警报选项卡启用它们。但是我不明白的是如何在前端接收这些通知UI?
我没有任何代码可以分享,因为我不知道从哪里开始!
任何帮助将不胜感激,谢谢。
有用于推送的模块:
QB.messages.tokens
QB.messages.subscriptions
QB.messages.events
要订阅推送,您必须做两件事:
- 使用 QB.messages.tokens
创建推送令牌
- 使用 QB.messages.subscriptions
创建订阅
可以在 REST API 页面 http://quickblox.com/developers/Messages#Typical_use_.D1.81ases
中找到更多信息
您还必须将 APNS 和 Google API 密钥上传到 QuickBlox 管理面板。
如果您要为 iOS/Android
构建 Cordova 应用程序,则需要这些
- 您需要对消息进行编码。
- 您需要确保您的移动应用能够理解解码后的消息。
例如,
正在向 android qb_user_id 发送推送通知:20290
(来自我 - 我的 qb_user_id:12121):
function b64EncodeUnicode(str) {
return btoa(encodeURIComponent(str).replace(/%([0-9A-F]{2})/g, function(match, p1) {
return String.fromCharCode('0x' + p1);
}));
}
function send_push() {
var params = {
notification_type: 'push',
push_type: 'gcm',
user: {ids: [20290]},
environment: "production",
message: b64EncodeUnicode('{"message":"HELLO WORLD","user_id":12121,"device_type":"WEB","message_qb_id":"563a55a44cedaa83885724cf","message_type":"Text","send_status":"BeingProcessed","send_time":1446663588607}')
};
QB.messages.events.create(params, function(err, response) {
if (err) {
console.log("QB.messages.events.create::error:" +err);
} else {
console.log("QB.messages.events.create::response:" + response);
}
});
}
在此示例中,移动应用正在查找以下格式的消息:
{"message","user_id","device_type","message_qb_id","message_type","send_status","send_time"}
对于这样一个基本问题深表歉意,但我真的找不到关于这个主题的任何信息。
Quickblox Javascript SDK 有一些与推送通知相关的 类,我已使用 chat_history 和聊天中的警报选项卡启用它们。但是我不明白的是如何在前端接收这些通知UI?
我没有任何代码可以分享,因为我不知道从哪里开始!
任何帮助将不胜感激,谢谢。
有用于推送的模块:
QB.messages.tokens
QB.messages.subscriptions
QB.messages.events
要订阅推送,您必须做两件事:
- 使用 QB.messages.tokens 创建推送令牌
- 使用 QB.messages.subscriptions 创建订阅
可以在 REST API 页面 http://quickblox.com/developers/Messages#Typical_use_.D1.81ases
中找到更多信息您还必须将 APNS 和 Google API 密钥上传到 QuickBlox 管理面板。
如果您要为 iOS/Android
构建 Cordova 应用程序,则需要这些- 您需要对消息进行编码。
- 您需要确保您的移动应用能够理解解码后的消息。
例如,
正在向 android qb_user_id 发送推送通知:20290 (来自我 - 我的 qb_user_id:12121):
function b64EncodeUnicode(str) {
return btoa(encodeURIComponent(str).replace(/%([0-9A-F]{2})/g, function(match, p1) {
return String.fromCharCode('0x' + p1);
}));
}
function send_push() {
var params = {
notification_type: 'push',
push_type: 'gcm',
user: {ids: [20290]},
environment: "production",
message: b64EncodeUnicode('{"message":"HELLO WORLD","user_id":12121,"device_type":"WEB","message_qb_id":"563a55a44cedaa83885724cf","message_type":"Text","send_status":"BeingProcessed","send_time":1446663588607}')
};
QB.messages.events.create(params, function(err, response) {
if (err) {
console.log("QB.messages.events.create::error:" +err);
} else {
console.log("QB.messages.events.create::response:" + response);
}
});
}
在此示例中,移动应用正在查找以下格式的消息: {"message","user_id","device_type","message_qb_id","message_type","send_status","send_time"}