@flink-app/firebase-messaging-plugin 0.11.1 → 0.11.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.flink/generatedHandlers.ts +1 -1
- package/.flink/generatedJobs.ts +1 -1
- package/.flink/generatedRepos.ts +1 -1
- package/.flink/schemas/schemas.ts +1 -1
- package/.flink/start.ts +1 -1
- package/dist/.flink/generatedHandlers.js +1 -1
- package/dist/.flink/generatedJobs.js +1 -1
- package/dist/.flink/generatedRepos.js +1 -1
- package/dist/.flink/start.js +1 -1
- package/dist/src/firebaseMessagingPlugin.js +38 -16
- package/package.json +2 -2
- package/src/firebaseMessagingPlugin.ts +14 -3
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
// Generated Wed Aug 07 2024
|
|
1
|
+
// Generated Wed Aug 07 2024 11:18:50 GMT+0200 (Central European Summer Time)
|
|
2
2
|
import { autoRegisteredHandlers, HttpMethod } from "@flink-app/flink";
|
|
3
3
|
import * as PostMessage_0 from "../src/handlers/PostMessage";
|
|
4
4
|
|
package/.flink/generatedJobs.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
// Generated Wed Aug 07 2024
|
|
1
|
+
// Generated Wed Aug 07 2024 11:18:50 GMT+0200 (Central European Summer Time)
|
|
2
2
|
import { autoRegisteredJobs } from "@flink-app/flink";
|
|
3
3
|
export const jobs = [];
|
|
4
4
|
autoRegisteredJobs.push(...jobs);
|
package/.flink/generatedRepos.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
// Generated Wed Aug 07 2024
|
|
1
|
+
// Generated Wed Aug 07 2024 11:18:50 GMT+0200 (Central European Summer Time)
|
|
2
2
|
import { autoRegisteredRepos } from "@flink-app/flink";
|
|
3
3
|
export const repos = [];
|
|
4
4
|
autoRegisteredRepos.push(...repos);
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import Message from "../../src/schemas/Message";
|
|
2
2
|
import SendResult from "../../src/schemas/SendResult";
|
|
3
3
|
|
|
4
|
-
// Generated Wed Aug 07 2024
|
|
4
|
+
// Generated Wed Aug 07 2024 11:18:50 GMT+0200 (Central European Summer Time)
|
|
5
5
|
export interface PostMessage_12_ReqSchema extends Message {}
|
|
6
6
|
|
|
7
7
|
export interface PostMessage_12_ResSchema extends SendResult {}
|
package/.flink/start.ts
CHANGED
|
@@ -20,7 +20,7 @@ var __importStar = (this && this.__importStar) || function (mod) {
|
|
|
20
20
|
};
|
|
21
21
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
22
22
|
exports.handlers = void 0;
|
|
23
|
-
// Generated Wed Aug 07 2024
|
|
23
|
+
// Generated Wed Aug 07 2024 11:18:50 GMT+0200 (Central European Summer Time)
|
|
24
24
|
var flink_1 = require("@flink-app/flink");
|
|
25
25
|
var PostMessage_0 = __importStar(require("../src/handlers/PostMessage"));
|
|
26
26
|
exports.handlers = [{ handler: PostMessage_0, assumedHttpMethod: flink_1.HttpMethod.post }];
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.jobs = void 0;
|
|
4
|
-
// Generated Wed Aug 07 2024
|
|
4
|
+
// Generated Wed Aug 07 2024 11:18:50 GMT+0200 (Central European Summer Time)
|
|
5
5
|
var flink_1 = require("@flink-app/flink");
|
|
6
6
|
exports.jobs = [];
|
|
7
7
|
flink_1.autoRegisteredJobs.push.apply(flink_1.autoRegisteredJobs, exports.jobs);
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.repos = void 0;
|
|
4
|
-
// Generated Wed Aug 07 2024
|
|
4
|
+
// Generated Wed Aug 07 2024 11:18:50 GMT+0200 (Central European Summer Time)
|
|
5
5
|
var flink_1 = require("@flink-app/flink");
|
|
6
6
|
exports.repos = [];
|
|
7
7
|
flink_1.autoRegisteredRepos.push.apply(flink_1.autoRegisteredRepos, exports.repos);
|
package/dist/.flink/start.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
// Generated Wed Aug 07 2024
|
|
3
|
+
// Generated Wed Aug 07 2024 11:18:50 GMT+0200 (Central European Summer Time)
|
|
4
4
|
require("./generatedHandlers");
|
|
5
5
|
require("./generatedRepos");
|
|
6
6
|
require("./generatedJobs");
|
|
@@ -111,7 +111,7 @@ exports.firebaseMessagingPlugin = firebaseMessagingPlugin;
|
|
|
111
111
|
*/
|
|
112
112
|
function send(message, adminApp) {
|
|
113
113
|
return __awaiter(this, void 0, void 0, function () {
|
|
114
|
-
var messages,
|
|
114
|
+
var messages, batchSize, _loop_1, i;
|
|
115
115
|
return __generator(this, function (_a) {
|
|
116
116
|
switch (_a.label) {
|
|
117
117
|
case 0:
|
|
@@ -119,26 +119,48 @@ function send(message, adminApp) {
|
|
|
119
119
|
var toArray = message.to, rest = __rest(message, ["to"]);
|
|
120
120
|
return __assign(__assign({}, rest), { token: to });
|
|
121
121
|
});
|
|
122
|
-
|
|
122
|
+
batchSize = 500;
|
|
123
|
+
_loop_1 = function (i) {
|
|
124
|
+
var batch, response, err_1;
|
|
125
|
+
return __generator(this, function (_b) {
|
|
126
|
+
switch (_b.label) {
|
|
127
|
+
case 0:
|
|
128
|
+
batch = messages.slice(i, i + batchSize);
|
|
129
|
+
_b.label = 1;
|
|
130
|
+
case 1:
|
|
131
|
+
_b.trys.push([1, 3, , 4]);
|
|
132
|
+
return [4 /*yield*/, adminApp.messaging().sendEach(batch)];
|
|
133
|
+
case 2:
|
|
134
|
+
response = _b.sent();
|
|
135
|
+
response.responses.forEach(function (res, idx) {
|
|
136
|
+
if (res.success) {
|
|
137
|
+
flink_1.log.debug("[firebaseMessaging] Successfully sent to device " + batch[idx].token);
|
|
138
|
+
}
|
|
139
|
+
else {
|
|
140
|
+
flink_1.log.debug("[firebaseMessaging] Failed sending to device " + batch[idx].token + ": " + res.error);
|
|
141
|
+
}
|
|
142
|
+
});
|
|
143
|
+
return [3 /*break*/, 4];
|
|
144
|
+
case 3:
|
|
145
|
+
err_1 = _b.sent();
|
|
146
|
+
flink_1.log.debug("[firebaseMessaging] Failed sending batch: " + err_1);
|
|
147
|
+
return [3 /*break*/, 4];
|
|
148
|
+
case 4: return [2 /*return*/];
|
|
149
|
+
}
|
|
150
|
+
});
|
|
151
|
+
};
|
|
152
|
+
i = 0;
|
|
123
153
|
_a.label = 1;
|
|
124
154
|
case 1:
|
|
125
|
-
if (!(
|
|
126
|
-
|
|
127
|
-
_a.label = 2;
|
|
155
|
+
if (!(i < messages.length)) return [3 /*break*/, 4];
|
|
156
|
+
return [5 /*yield**/, _loop_1(i)];
|
|
128
157
|
case 2:
|
|
129
|
-
_a.trys.push([2, 4, , 5]);
|
|
130
|
-
return [4 /*yield*/, adminApp.messaging().send(message_1)];
|
|
131
|
-
case 3:
|
|
132
158
|
_a.sent();
|
|
133
|
-
|
|
134
|
-
case
|
|
135
|
-
|
|
136
|
-
flink_1.log.debug("[firebaseMessaging] Failed sending to device " + message_1.token + ": " + err_1);
|
|
137
|
-
return [3 /*break*/, 5];
|
|
138
|
-
case 5:
|
|
139
|
-
_i++;
|
|
159
|
+
_a.label = 3;
|
|
160
|
+
case 3:
|
|
161
|
+
i += batchSize;
|
|
140
162
|
return [3 /*break*/, 1];
|
|
141
|
-
case
|
|
163
|
+
case 4: return [2 /*return*/];
|
|
142
164
|
}
|
|
143
165
|
});
|
|
144
166
|
});
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@flink-app/firebase-messaging-plugin",
|
|
3
|
-
"version": "0.11.
|
|
3
|
+
"version": "0.11.2",
|
|
4
4
|
"description": "Flink plugin to send Firebase cloud messages",
|
|
5
5
|
"scripts": {
|
|
6
6
|
"test": "echo \"Error: no test specified\"",
|
|
@@ -28,5 +28,5 @@
|
|
|
28
28
|
"tsc-watch": "^4.2.9",
|
|
29
29
|
"typescript": "^4.2.4"
|
|
30
30
|
},
|
|
31
|
-
"gitHead": "
|
|
31
|
+
"gitHead": "4adbc3dfa43aef1a9a4c0165a0e76a89f4c51429"
|
|
32
32
|
}
|
|
@@ -50,11 +50,22 @@ async function send(message: Message, adminApp: admin.app.App) {
|
|
|
50
50
|
return { ...rest, token: to };
|
|
51
51
|
});
|
|
52
52
|
|
|
53
|
-
|
|
53
|
+
// Split messages into batches of 500
|
|
54
|
+
const batchSize = 500;
|
|
55
|
+
for (let i = 0; i < messages.length; i += batchSize) {
|
|
56
|
+
const batch = messages.slice(i, i + batchSize);
|
|
57
|
+
|
|
54
58
|
try {
|
|
55
|
-
await adminApp.messaging().
|
|
59
|
+
const response = await adminApp.messaging().sendEach(batch);
|
|
60
|
+
response.responses.forEach((res, idx) => {
|
|
61
|
+
if (res.success) {
|
|
62
|
+
log.debug(`[firebaseMessaging] Successfully sent to device ${batch[idx].token}`);
|
|
63
|
+
} else {
|
|
64
|
+
log.debug(`[firebaseMessaging] Failed sending to device ${batch[idx].token}: ${res.error}`);
|
|
65
|
+
}
|
|
66
|
+
});
|
|
56
67
|
} catch (err: any) {
|
|
57
|
-
log.debug(`[firebaseMessaging] Failed sending
|
|
68
|
+
log.debug(`[firebaseMessaging] Failed sending batch: ${err}`);
|
|
58
69
|
}
|
|
59
70
|
}
|
|
60
71
|
}
|