firebase-admin 10.0.1 → 10.2.0
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/lib/app/core.d.ts +1 -1
- package/lib/app/core.js +1 -1
- package/lib/app/credential-factory.d.ts +1 -1
- package/lib/app/credential-factory.js +1 -1
- package/lib/app/credential-internal.d.ts +3 -1
- package/lib/app/credential-internal.js +19 -1
- package/lib/app/credential.d.ts +1 -1
- package/lib/app/credential.js +1 -1
- package/lib/app/firebase-app.d.ts +1 -1
- package/lib/app/firebase-app.js +4 -1
- package/lib/app/firebase-namespace.d.ts +1 -1
- package/lib/app/firebase-namespace.js +1 -1
- package/lib/app/index.d.ts +1 -1
- package/lib/app/index.js +1 -1
- package/lib/app/lifecycle.d.ts +1 -1
- package/lib/app/lifecycle.js +1 -1
- package/lib/app-check/app-check-api-client-internal.d.ts +1 -1
- package/lib/app-check/app-check-api-client-internal.js +3 -3
- package/lib/app-check/app-check-api.d.ts +1 -1
- package/lib/app-check/app-check-api.js +1 -1
- package/lib/app-check/app-check-namespace.d.ts +1 -1
- package/lib/app-check/app-check-namespace.js +1 -1
- package/lib/app-check/app-check.d.ts +1 -1
- package/lib/app-check/app-check.js +1 -1
- package/lib/app-check/index.d.ts +1 -1
- package/lib/app-check/index.js +1 -1
- package/lib/app-check/token-generator.d.ts +1 -1
- package/lib/app-check/token-generator.js +3 -5
- package/lib/app-check/token-verifier.d.ts +1 -1
- package/lib/app-check/token-verifier.js +2 -3
- package/lib/auth/action-code-settings-builder.d.ts +1 -1
- package/lib/auth/action-code-settings-builder.js +1 -1
- package/lib/auth/auth-api-request.d.ts +1 -1
- package/lib/auth/auth-api-request.js +24 -4
- package/lib/auth/auth-config.d.ts +1 -1
- package/lib/auth/auth-config.js +1 -1
- package/lib/auth/auth-namespace.d.ts +4 -2
- package/lib/auth/auth-namespace.js +1 -1
- package/lib/auth/auth.d.ts +1 -1
- package/lib/auth/auth.js +1 -1
- package/lib/auth/base-auth.d.ts +29 -2
- package/lib/auth/base-auth.js +38 -1
- package/lib/auth/identifier.d.ts +1 -1
- package/lib/auth/identifier.js +1 -1
- package/lib/auth/index.d.ts +2 -2
- package/lib/auth/index.js +1 -1
- package/lib/auth/tenant-manager.d.ts +1 -1
- package/lib/auth/tenant-manager.js +1 -1
- package/lib/auth/tenant.d.ts +1 -1
- package/lib/auth/tenant.js +1 -1
- package/lib/auth/token-generator.d.ts +1 -1
- package/lib/auth/token-generator.js +2 -2
- package/lib/auth/token-verifier.d.ts +70 -1
- package/lib/auth/token-verifier.js +54 -7
- package/lib/auth/user-import-builder.d.ts +1 -1
- package/lib/auth/user-import-builder.js +1 -1
- package/lib/auth/user-record.d.ts +1 -1
- package/lib/auth/user-record.js +1 -1
- package/lib/credential/index.d.ts +1 -1
- package/lib/credential/index.js +1 -1
- package/lib/database/database-namespace.d.ts +1 -1
- package/lib/database/database-namespace.js +1 -1
- package/lib/database/database.d.ts +1 -1
- package/lib/database/database.js +1 -1
- package/lib/database/index.d.ts +1 -1
- package/lib/database/index.js +2 -1
- package/lib/default-namespace.d.ts +1 -1
- package/lib/default-namespace.js +1 -1
- package/lib/esm/eventarc/index.js +5 -0
- package/lib/esm/functions/index.js +5 -0
- package/lib/eventarc/cloudevent.d.ts +84 -0
- package/lib/eventarc/cloudevent.js +19 -0
- package/lib/eventarc/eventarc-client-internal.d.ts +18 -0
- package/lib/eventarc/eventarc-client-internal.js +205 -0
- package/lib/eventarc/eventarc-utils.d.ts +31 -0
- package/lib/eventarc/eventarc-utils.js +141 -0
- package/lib/eventarc/eventarc.d.ts +107 -0
- package/lib/eventarc/eventarc.js +139 -0
- package/lib/eventarc/index.d.ts +53 -0
- package/lib/eventarc/index.js +64 -0
- package/lib/firebase-namespace-api.d.ts +1 -1
- package/lib/firebase-namespace-api.js +1 -1
- package/lib/firestore/firestore-internal.d.ts +1 -1
- package/lib/firestore/firestore-internal.js +1 -1
- package/lib/firestore/firestore-namespace.d.ts +1 -1
- package/lib/firestore/firestore-namespace.js +1 -1
- package/lib/firestore/index.d.ts +1 -1
- package/lib/firestore/index.js +1 -1
- package/lib/functions/functions-api-client-internal.d.ts +32 -0
- package/lib/functions/functions-api-client-internal.js +279 -0
- package/lib/functions/functions-api.d.ts +67 -0
- package/lib/functions/functions-api.js +19 -0
- package/lib/functions/functions.d.ts +63 -0
- package/lib/functions/functions.js +99 -0
- package/lib/functions/index.d.ts +53 -0
- package/lib/functions/index.js +64 -0
- package/lib/index.d.ts +1 -1
- package/lib/index.js +1 -1
- package/lib/installations/index.d.ts +1 -1
- package/lib/installations/index.js +1 -1
- package/lib/installations/installations-namespace.d.ts +1 -1
- package/lib/installations/installations-namespace.js +1 -1
- package/lib/installations/installations-request-handler.d.ts +1 -1
- package/lib/installations/installations-request-handler.js +1 -1
- package/lib/installations/installations.d.ts +1 -1
- package/lib/installations/installations.js +1 -1
- package/lib/instance-id/index.d.ts +1 -1
- package/lib/instance-id/index.js +1 -1
- package/lib/instance-id/instance-id-namespace.d.ts +1 -1
- package/lib/instance-id/instance-id-namespace.js +1 -1
- package/lib/instance-id/instance-id.d.ts +1 -1
- package/lib/instance-id/instance-id.js +1 -1
- package/lib/machine-learning/index.d.ts +1 -1
- package/lib/machine-learning/index.js +1 -1
- package/lib/machine-learning/machine-learning-api-client.d.ts +1 -1
- package/lib/machine-learning/machine-learning-api-client.js +1 -1
- package/lib/machine-learning/machine-learning-namespace.d.ts +1 -1
- package/lib/machine-learning/machine-learning-namespace.js +1 -1
- package/lib/machine-learning/machine-learning-utils.d.ts +1 -1
- package/lib/machine-learning/machine-learning-utils.js +1 -1
- package/lib/machine-learning/machine-learning.d.ts +1 -1
- package/lib/machine-learning/machine-learning.js +1 -1
- package/lib/messaging/batch-request-internal.d.ts +1 -1
- package/lib/messaging/batch-request-internal.js +1 -1
- package/lib/messaging/index.d.ts +1 -1
- package/lib/messaging/index.js +1 -1
- package/lib/messaging/messaging-api-request-internal.d.ts +1 -1
- package/lib/messaging/messaging-api-request-internal.js +1 -1
- package/lib/messaging/messaging-api.d.ts +1 -1
- package/lib/messaging/messaging-api.js +1 -1
- package/lib/messaging/messaging-errors-internal.d.ts +1 -1
- package/lib/messaging/messaging-errors-internal.js +1 -1
- package/lib/messaging/messaging-internal.d.ts +1 -1
- package/lib/messaging/messaging-internal.js +1 -1
- package/lib/messaging/messaging-namespace.d.ts +1 -1
- package/lib/messaging/messaging-namespace.js +1 -1
- package/lib/messaging/messaging.d.ts +1 -1
- package/lib/messaging/messaging.js +1 -2
- package/lib/project-management/android-app.d.ts +1 -1
- package/lib/project-management/android-app.js +1 -1
- package/lib/project-management/app-metadata.d.ts +1 -1
- package/lib/project-management/app-metadata.js +1 -1
- package/lib/project-management/index.d.ts +1 -1
- package/lib/project-management/index.js +1 -1
- package/lib/project-management/ios-app.d.ts +1 -1
- package/lib/project-management/ios-app.js +1 -1
- package/lib/project-management/project-management-api-request-internal.d.ts +1 -1
- package/lib/project-management/project-management-api-request-internal.js +1 -1
- package/lib/project-management/project-management-namespace.d.ts +1 -1
- package/lib/project-management/project-management-namespace.js +1 -1
- package/lib/project-management/project-management.d.ts +1 -1
- package/lib/project-management/project-management.js +1 -1
- package/lib/remote-config/index.d.ts +1 -1
- package/lib/remote-config/index.js +1 -1
- package/lib/remote-config/remote-config-api-client-internal.d.ts +1 -1
- package/lib/remote-config/remote-config-api-client-internal.js +1 -1
- package/lib/remote-config/remote-config-api.d.ts +1 -1
- package/lib/remote-config/remote-config-api.js +1 -1
- package/lib/remote-config/remote-config-namespace.d.ts +1 -1
- package/lib/remote-config/remote-config-namespace.js +1 -1
- package/lib/remote-config/remote-config.d.ts +1 -1
- package/lib/remote-config/remote-config.js +1 -1
- package/lib/security-rules/index.d.ts +1 -1
- package/lib/security-rules/index.js +1 -1
- package/lib/security-rules/security-rules-api-client-internal.d.ts +1 -1
- package/lib/security-rules/security-rules-api-client-internal.js +1 -1
- package/lib/security-rules/security-rules-internal.d.ts +1 -1
- package/lib/security-rules/security-rules-internal.js +1 -1
- package/lib/security-rules/security-rules-namespace.d.ts +1 -1
- package/lib/security-rules/security-rules-namespace.js +1 -1
- package/lib/security-rules/security-rules.d.ts +1 -1
- package/lib/security-rules/security-rules.js +1 -1
- package/lib/storage/index.d.ts +1 -1
- package/lib/storage/index.js +1 -1
- package/lib/storage/storage-namespace.d.ts +1 -1
- package/lib/storage/storage-namespace.js +1 -1
- package/lib/storage/storage.d.ts +1 -1
- package/lib/storage/storage.js +1 -1
- package/lib/utils/api-request.d.ts +1 -1
- package/lib/utils/api-request.js +1 -1
- package/lib/utils/crypto-signer.d.ts +1 -1
- package/lib/utils/crypto-signer.js +1 -1
- package/lib/utils/deep-copy.d.ts +1 -1
- package/lib/utils/deep-copy.js +1 -1
- package/lib/utils/error.d.ts +9 -1
- package/lib/utils/error.js +11 -1
- package/lib/utils/index.d.ts +43 -1
- package/lib/utils/index.js +72 -2
- package/lib/utils/jwt.d.ts +1 -1
- package/lib/utils/jwt.js +1 -1
- package/lib/utils/validator.d.ts +1 -1
- package/lib/utils/validator.js +1 -1
- package/package.json +32 -15
|
@@ -0,0 +1,99 @@
|
|
|
1
|
+
/*! firebase-admin v10.2.0 */
|
|
2
|
+
"use strict";
|
|
3
|
+
/*!
|
|
4
|
+
* @license
|
|
5
|
+
* Copyright 2021 Google Inc.
|
|
6
|
+
*
|
|
7
|
+
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
8
|
+
* you may not use this file except in compliance with the License.
|
|
9
|
+
* You may obtain a copy of the License at
|
|
10
|
+
*
|
|
11
|
+
* http://www.apache.org/licenses/LICENSE-2.0
|
|
12
|
+
*
|
|
13
|
+
* Unless required by applicable law or agreed to in writing, software
|
|
14
|
+
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
15
|
+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
16
|
+
* See the License for the specific language governing permissions and
|
|
17
|
+
* limitations under the License.
|
|
18
|
+
*/
|
|
19
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
20
|
+
exports.TaskQueue = exports.Functions = void 0;
|
|
21
|
+
var functions_api_client_internal_1 = require("./functions-api-client-internal");
|
|
22
|
+
var validator = require("../utils/validator");
|
|
23
|
+
/**
|
|
24
|
+
* The Firebase `Functions` service interface.
|
|
25
|
+
*/
|
|
26
|
+
var Functions = /** @class */ (function () {
|
|
27
|
+
/**
|
|
28
|
+
* @param app - The app for this `Functions` service.
|
|
29
|
+
* @constructor
|
|
30
|
+
* @internal
|
|
31
|
+
*/
|
|
32
|
+
function Functions(app) {
|
|
33
|
+
this.app = app;
|
|
34
|
+
this.client = new functions_api_client_internal_1.FunctionsApiClient(app);
|
|
35
|
+
}
|
|
36
|
+
/**
|
|
37
|
+
* Creates a reference to a {@link TaskQueue} for a given function name.
|
|
38
|
+
* The function name can be either:
|
|
39
|
+
*
|
|
40
|
+
* 1) A fully qualified function resource name:
|
|
41
|
+
* `projects/{project}/locations/{location}/functions/{functionName}`
|
|
42
|
+
*
|
|
43
|
+
* 2) A partial resource name with location and function name, in which case
|
|
44
|
+
* the runtime project ID is used:
|
|
45
|
+
* `locations/{location}/functions/{functionName}`
|
|
46
|
+
*
|
|
47
|
+
* 3) A partial function name, in which case the runtime project ID and the default location,
|
|
48
|
+
* `us-central1`, is used:
|
|
49
|
+
* `{functionName}`
|
|
50
|
+
*
|
|
51
|
+
* @param functionName - The name of the function.
|
|
52
|
+
* @param extensionId - Optional Firebase extension ID.
|
|
53
|
+
* @returns A promise that fulfills with a `TaskQueue`.
|
|
54
|
+
*/
|
|
55
|
+
Functions.prototype.taskQueue = function (functionName, extensionId) {
|
|
56
|
+
return new TaskQueue(functionName, this.client, extensionId);
|
|
57
|
+
};
|
|
58
|
+
return Functions;
|
|
59
|
+
}());
|
|
60
|
+
exports.Functions = Functions;
|
|
61
|
+
/**
|
|
62
|
+
* The `TaskQueue` interface.
|
|
63
|
+
*/
|
|
64
|
+
var TaskQueue = /** @class */ (function () {
|
|
65
|
+
/**
|
|
66
|
+
* @param functionName - The name of the function.
|
|
67
|
+
* @param client - The `FunctionsApiClient` instance.
|
|
68
|
+
* @param extensionId - Optional canonical ID of the extension.
|
|
69
|
+
* @constructor
|
|
70
|
+
* @internal
|
|
71
|
+
*/
|
|
72
|
+
function TaskQueue(functionName, client, extensionId) {
|
|
73
|
+
this.functionName = functionName;
|
|
74
|
+
this.client = client;
|
|
75
|
+
this.extensionId = extensionId;
|
|
76
|
+
if (!validator.isNonEmptyString(functionName)) {
|
|
77
|
+
throw new functions_api_client_internal_1.FirebaseFunctionsError('invalid-argument', '`functionName` must be a non-empty string.');
|
|
78
|
+
}
|
|
79
|
+
if (!validator.isNonNullObject(client) || !('enqueue' in client)) {
|
|
80
|
+
throw new functions_api_client_internal_1.FirebaseFunctionsError('invalid-argument', 'Must provide a valid FunctionsApiClient instance to create a new TaskQueue.');
|
|
81
|
+
}
|
|
82
|
+
if (typeof extensionId !== 'undefined' && !validator.isString(extensionId)) {
|
|
83
|
+
throw new functions_api_client_internal_1.FirebaseFunctionsError('invalid-argument', '`extensionId` must be a string.');
|
|
84
|
+
}
|
|
85
|
+
}
|
|
86
|
+
/**
|
|
87
|
+
* Creates a task and adds it to the queue. Tasks cannot be updated after creation.
|
|
88
|
+
* This action requires `cloudtasks.tasks.create` IAM permission on the service account.
|
|
89
|
+
*
|
|
90
|
+
* @param data - The data payload of the task.
|
|
91
|
+
* @param opts - Optional options when enqueuing a new task.
|
|
92
|
+
* @returns A promise that resolves when the task has successfully been added to the queue.
|
|
93
|
+
*/
|
|
94
|
+
TaskQueue.prototype.enqueue = function (data, opts) {
|
|
95
|
+
return this.client.enqueue(data, this.functionName, this.extensionId, opts);
|
|
96
|
+
};
|
|
97
|
+
return TaskQueue;
|
|
98
|
+
}());
|
|
99
|
+
exports.TaskQueue = TaskQueue;
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
/*! firebase-admin v10.2.0 */
|
|
2
|
+
/*!
|
|
3
|
+
* @license
|
|
4
|
+
* Copyright 2021 Google Inc.
|
|
5
|
+
*
|
|
6
|
+
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
7
|
+
* you may not use this file except in compliance with the License.
|
|
8
|
+
* You may obtain a copy of the License at
|
|
9
|
+
*
|
|
10
|
+
* http://www.apache.org/licenses/LICENSE-2.0
|
|
11
|
+
*
|
|
12
|
+
* Unless required by applicable law or agreed to in writing, software
|
|
13
|
+
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
14
|
+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
15
|
+
* See the License for the specific language governing permissions and
|
|
16
|
+
* limitations under the License.
|
|
17
|
+
*/
|
|
18
|
+
/**
|
|
19
|
+
* Firebase Functions service.
|
|
20
|
+
*
|
|
21
|
+
* @packageDocumentation
|
|
22
|
+
*/
|
|
23
|
+
import { App } from '../app';
|
|
24
|
+
import { Functions } from './functions';
|
|
25
|
+
export { DelayDelivery, AbsoluteDelivery, DeliverySchedule, TaskOptions, TaskOptionsExperimental } from './functions-api';
|
|
26
|
+
export { Functions, TaskQueue } from './functions';
|
|
27
|
+
/**
|
|
28
|
+
* Gets the {@link Functions} service for the default app
|
|
29
|
+
* or a given app.
|
|
30
|
+
*
|
|
31
|
+
* `getFunctions()` can be called with no arguments to access the default
|
|
32
|
+
* app's `Functions` service or as `getFunctions(app)` to access the
|
|
33
|
+
* `Functions` service associated with a specific app.
|
|
34
|
+
*
|
|
35
|
+
* @example
|
|
36
|
+
* ```javascript
|
|
37
|
+
* // Get the `Functions` service for the default app
|
|
38
|
+
* const defaultFunctions = getFunctions();
|
|
39
|
+
* ```
|
|
40
|
+
*
|
|
41
|
+
* @example
|
|
42
|
+
* ```javascript
|
|
43
|
+
* // Get the `Functions` service for a given app
|
|
44
|
+
* const otherFunctions = getFunctions(otherApp);
|
|
45
|
+
* ```
|
|
46
|
+
*
|
|
47
|
+
* @param app - Optional app for which to return the `Functions` service.
|
|
48
|
+
* If not provided, the default `Functions` service is returned.
|
|
49
|
+
*
|
|
50
|
+
* @returns The default `Functions` service if no app is provided, or the `Functions`
|
|
51
|
+
* service associated with the provided app.
|
|
52
|
+
*/
|
|
53
|
+
export declare function getFunctions(app?: App): Functions;
|
|
@@ -0,0 +1,64 @@
|
|
|
1
|
+
/*! firebase-admin v10.2.0 */
|
|
2
|
+
"use strict";
|
|
3
|
+
/*!
|
|
4
|
+
* @license
|
|
5
|
+
* Copyright 2021 Google Inc.
|
|
6
|
+
*
|
|
7
|
+
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
8
|
+
* you may not use this file except in compliance with the License.
|
|
9
|
+
* You may obtain a copy of the License at
|
|
10
|
+
*
|
|
11
|
+
* http://www.apache.org/licenses/LICENSE-2.0
|
|
12
|
+
*
|
|
13
|
+
* Unless required by applicable law or agreed to in writing, software
|
|
14
|
+
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
15
|
+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
16
|
+
* See the License for the specific language governing permissions and
|
|
17
|
+
* limitations under the License.
|
|
18
|
+
*/
|
|
19
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
20
|
+
exports.getFunctions = void 0;
|
|
21
|
+
/**
|
|
22
|
+
* Firebase Functions service.
|
|
23
|
+
*
|
|
24
|
+
* @packageDocumentation
|
|
25
|
+
*/
|
|
26
|
+
var app_1 = require("../app");
|
|
27
|
+
var functions_1 = require("./functions");
|
|
28
|
+
var functions_2 = require("./functions");
|
|
29
|
+
Object.defineProperty(exports, "Functions", { enumerable: true, get: function () { return functions_2.Functions; } });
|
|
30
|
+
Object.defineProperty(exports, "TaskQueue", { enumerable: true, get: function () { return functions_2.TaskQueue; } });
|
|
31
|
+
/**
|
|
32
|
+
* Gets the {@link Functions} service for the default app
|
|
33
|
+
* or a given app.
|
|
34
|
+
*
|
|
35
|
+
* `getFunctions()` can be called with no arguments to access the default
|
|
36
|
+
* app's `Functions` service or as `getFunctions(app)` to access the
|
|
37
|
+
* `Functions` service associated with a specific app.
|
|
38
|
+
*
|
|
39
|
+
* @example
|
|
40
|
+
* ```javascript
|
|
41
|
+
* // Get the `Functions` service for the default app
|
|
42
|
+
* const defaultFunctions = getFunctions();
|
|
43
|
+
* ```
|
|
44
|
+
*
|
|
45
|
+
* @example
|
|
46
|
+
* ```javascript
|
|
47
|
+
* // Get the `Functions` service for a given app
|
|
48
|
+
* const otherFunctions = getFunctions(otherApp);
|
|
49
|
+
* ```
|
|
50
|
+
*
|
|
51
|
+
* @param app - Optional app for which to return the `Functions` service.
|
|
52
|
+
* If not provided, the default `Functions` service is returned.
|
|
53
|
+
*
|
|
54
|
+
* @returns The default `Functions` service if no app is provided, or the `Functions`
|
|
55
|
+
* service associated with the provided app.
|
|
56
|
+
*/
|
|
57
|
+
function getFunctions(app) {
|
|
58
|
+
if (typeof app === 'undefined') {
|
|
59
|
+
app = app_1.getApp();
|
|
60
|
+
}
|
|
61
|
+
var firebaseApp = app;
|
|
62
|
+
return firebaseApp.getOrInitService('functions', function (app) { return new functions_1.Functions(app); });
|
|
63
|
+
}
|
|
64
|
+
exports.getFunctions = getFunctions;
|
package/lib/index.d.ts
CHANGED
package/lib/index.js
CHANGED
package/lib/instance-id/index.js
CHANGED
package/lib/messaging/index.d.ts
CHANGED
package/lib/messaging/index.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/*! firebase-admin v10.0
|
|
1
|
+
/*! firebase-admin v10.2.0 */
|
|
2
2
|
"use strict";
|
|
3
3
|
/*!
|
|
4
4
|
* @license
|
|
@@ -35,7 +35,6 @@ var utils = require("../utils");
|
|
|
35
35
|
var validator = require("../utils/validator");
|
|
36
36
|
var messaging_internal_1 = require("./messaging-internal");
|
|
37
37
|
var messaging_api_request_internal_1 = require("./messaging-api-request-internal");
|
|
38
|
-
/* eslint-disable @typescript-eslint/camelcase */
|
|
39
38
|
// FCM endpoints
|
|
40
39
|
var FCM_SEND_HOST = 'fcm.googleapis.com';
|
|
41
40
|
var FCM_SEND_PATH = '/fcm/send';
|