I am facing an issue with the alarm
- when we call the schedule first time, it works fine every 2 seconds
- when we call the schedule a second time it calls 2 times every 2 seconds
- when we call the schedule a third time it is calling 3 times every 2 second
- continue
every time, it should call at one time every 2 seconds
export class Schedule {
id: string | DurableObjectId;
storage: DurableObjectStorage;
doEverySeconds: number;
env: Env;
constructor(state: DurableObjectState, env: Env) {
this.storage = state.storage;
this.id = state.id;
this.doEverySeconds = 2;
this.env = env;
}
async fetch() {
this.scheduleAlarm();
return new Response("schedule Successfully!");
}
async alarm() {
console.log("Schedule Alaram Doing");
this.scheduleAlarm();
}
async scheduleAlarm() {
let scheduledTime: number = Date.now();
scheduledTime += this.doEverySeconds * 1000;
this.storage.setAlarm(scheduledTime);
}
}