提交 71080cf1 编写于 作者: fxy060608's avatar fxy060608

feat(push): normalize message

上级 51fd8186
......@@ -24,9 +24,24 @@ interface OnPushClickCallback {
let cid: string | undefined
let cidErrMsg: string | undefined
function normalizePushMessage(message: unknown) {
function normalizePushMessage(type: 'receive' | 'click', message: unknown) {
try {
return JSON.parse(message as string)
const res = JSON.parse(message as string) as Record<string, any>
if (type === 'receive') {
if (res.payload) {
if (res.aps) {
res.payload.aps = res.aps
}
return res.payload
}
} else if (type === 'click') {
delete res.type
delete res.__UUID__
delete res.appid
if (res.aps && res.aps.alert) {
res.title = res.aps.alert.title
}
}
} catch (e: any) {}
return message
}
......@@ -47,11 +62,17 @@ export function invokePushCallback(
invokeGetPushCidCallbacks(cid, args.errMsg)
} else if (args.type === 'pushMsg') {
onPushMessageCallbacks.forEach((callback) => {
callback({ type: 'receive', data: normalizePushMessage(args.message) })
callback({
type: 'receive',
data: normalizePushMessage('receive', args.message),
})
})
} else if (args.type === 'click') {
onPushMessageCallbacks.forEach((callback) => {
callback({ type: 'click', data: normalizePushMessage(args.message) })
callback({
type: 'click',
data: normalizePushMessage('click', args.message),
})
})
}
}
......
......@@ -11057,9 +11057,25 @@ const getLaunchOptionsSync = defineSyncApi(API_GET_LAUNCH_OPTIONS_SYNC, () => {
let cid;
let cidErrMsg;
function normalizePushMessage(message) {
function normalizePushMessage(type, message) {
try {
return JSON.parse(message);
const res = JSON.parse(message);
if (type === 'receive') {
if (res.payload) {
if (res.aps) {
res.payload.aps = res.aps;
}
return res.payload;
}
}
else if (type === 'click') {
delete res.type;
delete res.__UUID__;
delete res.appid;
if (res.aps && res.aps.alert) {
res.title = res.aps.alert.title;
}
}
}
catch (e) { }
return message;
......@@ -11076,12 +11092,18 @@ function invokePushCallback(args) {
}
else if (args.type === 'pushMsg') {
onPushMessageCallbacks.forEach((callback) => {
callback({ type: 'receive', data: normalizePushMessage(args.message) });
callback({
type: 'receive',
data: normalizePushMessage('receive', args.message),
});
});
}
else if (args.type === 'click') {
onPushMessageCallbacks.forEach((callback) => {
callback({ type: 'click', data: normalizePushMessage(args.message) });
callback({
type: 'click',
data: normalizePushMessage('click', args.message),
});
});
}
}
......
......@@ -4564,9 +4564,24 @@ const getLaunchOptionsSync = /* @__PURE__ */ defineSyncApi(API_GET_LAUNCH_OPTION
});
let cid;
let cidErrMsg;
function normalizePushMessage(message) {
function normalizePushMessage(type, message) {
try {
return JSON.parse(message);
const res = JSON.parse(message);
if (type === "receive") {
if (res.payload) {
if (res.aps) {
res.payload.aps = res.aps;
}
return res.payload;
}
} else if (type === "click") {
delete res.type;
delete res.__UUID__;
delete res.appid;
if (res.aps && res.aps.alert) {
res.title = res.aps.alert.title;
}
}
} catch (e2) {
}
return message;
......@@ -4578,11 +4593,17 @@ function invokePushCallback(args) {
invokeGetPushCidCallbacks(cid, args.errMsg);
} else if (args.type === "pushMsg") {
onPushMessageCallbacks.forEach((callback) => {
callback({ type: "receive", data: normalizePushMessage(args.message) });
callback({
type: "receive",
data: normalizePushMessage("receive", args.message)
});
});
} else if (args.type === "click") {
onPushMessageCallbacks.forEach((callback) => {
callback({ type: "click", data: normalizePushMessage(args.message) });
callback({
type: "click",
data: normalizePushMessage("click", args.message)
});
});
}
}
......
......@@ -540,9 +540,25 @@ const $emit = defineSyncApi(API_EMIT, (name, ...args) => {
let cid;
let cidErrMsg;
function normalizePushMessage(message) {
function normalizePushMessage(type, message) {
try {
return JSON.parse(message);
const res = JSON.parse(message);
if (type === 'receive') {
if (res.payload) {
if (res.aps) {
res.payload.aps = res.aps;
}
return res.payload;
}
}
else if (type === 'click') {
delete res.type;
delete res.__UUID__;
delete res.appid;
if (res.aps && res.aps.alert) {
res.title = res.aps.alert.title;
}
}
}
catch (e) { }
return message;
......@@ -559,12 +575,18 @@ function invokePushCallback(args) {
}
else if (args.type === 'pushMsg') {
onPushMessageCallbacks.forEach((callback) => {
callback({ type: 'receive', data: normalizePushMessage(args.message) });
callback({
type: 'receive',
data: normalizePushMessage('receive', args.message),
});
});
}
else if (args.type === 'click') {
onPushMessageCallbacks.forEach((callback) => {
callback({ type: 'click', data: normalizePushMessage(args.message) });
callback({
type: 'click',
data: normalizePushMessage('click', args.message),
});
});
}
}
......
......@@ -540,9 +540,25 @@ const $emit = defineSyncApi(API_EMIT, (name, ...args) => {
let cid;
let cidErrMsg;
function normalizePushMessage(message) {
function normalizePushMessage(type, message) {
try {
return JSON.parse(message);
const res = JSON.parse(message);
if (type === 'receive') {
if (res.payload) {
if (res.aps) {
res.payload.aps = res.aps;
}
return res.payload;
}
}
else if (type === 'click') {
delete res.type;
delete res.__UUID__;
delete res.appid;
if (res.aps && res.aps.alert) {
res.title = res.aps.alert.title;
}
}
}
catch (e) { }
return message;
......@@ -559,12 +575,18 @@ function invokePushCallback(args) {
}
else if (args.type === 'pushMsg') {
onPushMessageCallbacks.forEach((callback) => {
callback({ type: 'receive', data: normalizePushMessage(args.message) });
callback({
type: 'receive',
data: normalizePushMessage('receive', args.message),
});
});
}
else if (args.type === 'click') {
onPushMessageCallbacks.forEach((callback) => {
callback({ type: 'click', data: normalizePushMessage(args.message) });
callback({
type: 'click',
data: normalizePushMessage('click', args.message),
});
});
}
}
......
......@@ -540,9 +540,25 @@ const $emit = defineSyncApi(API_EMIT, (name, ...args) => {
let cid;
let cidErrMsg;
function normalizePushMessage(message) {
function normalizePushMessage(type, message) {
try {
return JSON.parse(message);
const res = JSON.parse(message);
if (type === 'receive') {
if (res.payload) {
if (res.aps) {
res.payload.aps = res.aps;
}
return res.payload;
}
}
else if (type === 'click') {
delete res.type;
delete res.__UUID__;
delete res.appid;
if (res.aps && res.aps.alert) {
res.title = res.aps.alert.title;
}
}
}
catch (e) { }
return message;
......@@ -559,12 +575,18 @@ function invokePushCallback(args) {
}
else if (args.type === 'pushMsg') {
onPushMessageCallbacks.forEach((callback) => {
callback({ type: 'receive', data: normalizePushMessage(args.message) });
callback({
type: 'receive',
data: normalizePushMessage('receive', args.message),
});
});
}
else if (args.type === 'click') {
onPushMessageCallbacks.forEach((callback) => {
callback({ type: 'click', data: normalizePushMessage(args.message) });
callback({
type: 'click',
data: normalizePushMessage('click', args.message),
});
});
}
}
......
......@@ -540,9 +540,25 @@ const $emit = defineSyncApi(API_EMIT, (name, ...args) => {
let cid;
let cidErrMsg;
function normalizePushMessage(message) {
function normalizePushMessage(type, message) {
try {
return JSON.parse(message);
const res = JSON.parse(message);
if (type === 'receive') {
if (res.payload) {
if (res.aps) {
res.payload.aps = res.aps;
}
return res.payload;
}
}
else if (type === 'click') {
delete res.type;
delete res.__UUID__;
delete res.appid;
if (res.aps && res.aps.alert) {
res.title = res.aps.alert.title;
}
}
}
catch (e) { }
return message;
......@@ -559,12 +575,18 @@ function invokePushCallback(args) {
}
else if (args.type === 'pushMsg') {
onPushMessageCallbacks.forEach((callback) => {
callback({ type: 'receive', data: normalizePushMessage(args.message) });
callback({
type: 'receive',
data: normalizePushMessage('receive', args.message),
});
});
}
else if (args.type === 'click') {
onPushMessageCallbacks.forEach((callback) => {
callback({ type: 'click', data: normalizePushMessage(args.message) });
callback({
type: 'click',
data: normalizePushMessage('click', args.message),
});
});
}
}
......
......@@ -540,9 +540,25 @@ const $emit = defineSyncApi(API_EMIT, (name, ...args) => {
let cid;
let cidErrMsg;
function normalizePushMessage(message) {
function normalizePushMessage(type, message) {
try {
return JSON.parse(message);
const res = JSON.parse(message);
if (type === 'receive') {
if (res.payload) {
if (res.aps) {
res.payload.aps = res.aps;
}
return res.payload;
}
}
else if (type === 'click') {
delete res.type;
delete res.__UUID__;
delete res.appid;
if (res.aps && res.aps.alert) {
res.title = res.aps.alert.title;
}
}
}
catch (e) { }
return message;
......@@ -559,12 +575,18 @@ function invokePushCallback(args) {
}
else if (args.type === 'pushMsg') {
onPushMessageCallbacks.forEach((callback) => {
callback({ type: 'receive', data: normalizePushMessage(args.message) });
callback({
type: 'receive',
data: normalizePushMessage('receive', args.message),
});
});
}
else if (args.type === 'click') {
onPushMessageCallbacks.forEach((callback) => {
callback({ type: 'click', data: normalizePushMessage(args.message) });
callback({
type: 'click',
data: normalizePushMessage('click', args.message),
});
});
}
}
......
......@@ -540,9 +540,25 @@ const $emit = defineSyncApi(API_EMIT, (name, ...args) => {
let cid;
let cidErrMsg;
function normalizePushMessage(message) {
function normalizePushMessage(type, message) {
try {
return JSON.parse(message);
const res = JSON.parse(message);
if (type === 'receive') {
if (res.payload) {
if (res.aps) {
res.payload.aps = res.aps;
}
return res.payload;
}
}
else if (type === 'click') {
delete res.type;
delete res.__UUID__;
delete res.appid;
if (res.aps && res.aps.alert) {
res.title = res.aps.alert.title;
}
}
}
catch (e) { }
return message;
......@@ -559,12 +575,18 @@ function invokePushCallback(args) {
}
else if (args.type === 'pushMsg') {
onPushMessageCallbacks.forEach((callback) => {
callback({ type: 'receive', data: normalizePushMessage(args.message) });
callback({
type: 'receive',
data: normalizePushMessage('receive', args.message),
});
});
}
else if (args.type === 'click') {
onPushMessageCallbacks.forEach((callback) => {
callback({ type: 'click', data: normalizePushMessage(args.message) });
callback({
type: 'click',
data: normalizePushMessage('click', args.message),
});
});
}
}
......
......@@ -504,9 +504,25 @@ const $emit = defineSyncApi(API_EMIT, (name, ...args) => {
let cid;
let cidErrMsg;
function normalizePushMessage(message) {
function normalizePushMessage(type, message) {
try {
return JSON.parse(message);
const res = JSON.parse(message);
if (type === 'receive') {
if (res.payload) {
if (res.aps) {
res.payload.aps = res.aps;
}
return res.payload;
}
}
else if (type === 'click') {
delete res.type;
delete res.__UUID__;
delete res.appid;
if (res.aps && res.aps.alert) {
res.title = res.aps.alert.title;
}
}
}
catch (e) { }
return message;
......@@ -523,12 +539,18 @@ function invokePushCallback(args) {
}
else if (args.type === 'pushMsg') {
onPushMessageCallbacks.forEach((callback) => {
callback({ type: 'receive', data: normalizePushMessage(args.message) });
callback({
type: 'receive',
data: normalizePushMessage('receive', args.message),
});
});
}
else if (args.type === 'click') {
onPushMessageCallbacks.forEach((callback) => {
callback({ type: 'click', data: normalizePushMessage(args.message) });
callback({
type: 'click',
data: normalizePushMessage('click', args.message),
});
});
}
}
......
......@@ -540,9 +540,25 @@ const $emit = defineSyncApi(API_EMIT, (name, ...args) => {
let cid;
let cidErrMsg;
function normalizePushMessage(message) {
function normalizePushMessage(type, message) {
try {
return JSON.parse(message);
const res = JSON.parse(message);
if (type === 'receive') {
if (res.payload) {
if (res.aps) {
res.payload.aps = res.aps;
}
return res.payload;
}
}
else if (type === 'click') {
delete res.type;
delete res.__UUID__;
delete res.appid;
if (res.aps && res.aps.alert) {
res.title = res.aps.alert.title;
}
}
}
catch (e) { }
return message;
......@@ -559,12 +575,18 @@ function invokePushCallback(args) {
}
else if (args.type === 'pushMsg') {
onPushMessageCallbacks.forEach((callback) => {
callback({ type: 'receive', data: normalizePushMessage(args.message) });
callback({
type: 'receive',
data: normalizePushMessage('receive', args.message),
});
});
}
else if (args.type === 'click') {
onPushMessageCallbacks.forEach((callback) => {
callback({ type: 'click', data: normalizePushMessage(args.message) });
callback({
type: 'click',
data: normalizePushMessage('click', args.message),
});
});
}
}
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册