28 lines
715 B
TypeScript
28 lines
715 B
TypeScript
import type { AdminSdkCredentials } from "./getGoogleAuthToken";
|
|
import { sendFcmMessage } from "./sendFcmMessage";
|
|
|
|
export async function verifyFcmToken(
|
|
token: string,
|
|
adminSdkJson: AdminSdkCredentials,
|
|
): Promise<boolean> {
|
|
return sendFcmMessage(
|
|
adminSdkJson,
|
|
{ name: "token_verification", token },
|
|
true,
|
|
)
|
|
.then((response) => {
|
|
const error = "error" in response ? response.error : undefined;
|
|
if (error) {
|
|
console.error("Received error response while validating FCM token");
|
|
console.error(JSON.stringify(error));
|
|
}
|
|
|
|
return !error;
|
|
})
|
|
.catch((err) => {
|
|
console.error("Failed to verify FCM token", err);
|
|
|
|
return false;
|
|
});
|
|
}
|