move shouldSendNotifications property to the AppleNotificationSender

This commit is contained in:
2025-03-24 10:02:30 -07:00
parent a6ceeb4dfb
commit 6251f0e247
3 changed files with 11 additions and 10 deletions

View File

@@ -1,9 +1,6 @@
import { GetterRepository } from "../../repositories/GetterRepository";
import jwt from "jsonwebtoken";
import fs from "fs";
import { TupleKey } from "../../types/TupleKey";
import { IEta } from "../../entities/entities";
import http2 from "http2";
import { AppleNotificationSender, NotificationAlertArguments } from "../senders/AppleNotificationSender";
export interface ScheduledNotificationData {
@@ -16,7 +13,6 @@ export class ETANotificationScheduler {
public readonly secondsThresholdForNotificationToFire = 180;
constructor(private repository: GetterRepository,
private shouldActuallySendNotifications = true,
private appleNotificationSender = new AppleNotificationSender()
) {
this.etaSubscriberCallback = this.etaSubscriberCallback.bind(this);
@@ -35,10 +31,6 @@ export class ETANotificationScheduler {
private deviceIdsToDeliverTo: { [key: string]: Set<string> } = {}
private async sendEtaNotificationImmediately(notificationData: ScheduledNotificationData): Promise<boolean> {
if (!this.shouldActuallySendNotifications) {
return true; // pretend that the notification sent
}
const { deviceId, shuttleId, stopId } = notificationData;
const shuttle = await this.repository.getShuttleById(shuttleId);

View File

@@ -16,6 +16,9 @@ export class AppleNotificationSender {
private apnsToken: string | undefined = undefined;
private _lastRefreshedTimeMs: number | undefined = undefined;
constructor(private shouldActuallySendNotifications = true) {
}
get lastRefreshedTimeMs(): number | undefined {
return this._lastRefreshedTimeMs;
}
@@ -64,6 +67,11 @@ export class AppleNotificationSender {
* notification was sent successfully.
*/
public async sendNotificationImmediately(deviceId: string, notificationAlertArguments: NotificationAlertArguments) {
if (!this.shouldActuallySendNotifications) {
// pretend that the notification sent
return true;
}
this.reloadAPNsTokenIfTimePassed();
const bundleId = process.env.APNS_BUNDLE_ID;