Tengo una función de temporizador azul de muestra que funciona, pero no estoy seguro de si lo hago correctamente porque no puedo probarlo de inmediato porque hay un intervalo de horas programado.
Mi objetivo es mostrar context.log cada 8:00 a. m. y 8:00 p. m. todos los días.
nota: mi código a continuación en realidad no funciona porque el parámetro
hourno acepta matriz (solo con fines de demostración)
Aquí está mi código:
export const TimerTrigger1 = TypedAzFunc.createFunctionBuilder(__dirname) .with( TimerTriggerPlugin.init({ schedule: { crontab: { second: 0, minute: { interval: 1 }, hour: [{ interval: 8 }, { interval: 20 }], day: '*', month: '*', dayOfWeek: '*', }, }, }) ) .build(async (context, timer) => { var timeStamp = new Date().toISOString() if (timer.isPastDue) { context.log('timer has already triggered') } context.log('timer has triggered', timeStamp) }) export const run = TimerTrigger1.runpuede lograr esto pasando una matriz en la propiedad de la hour .
TimerTriggerPlugin.init({ schedule: { crontab: { second: 0, minute: 0, hour: [8, 20], day: '*', month: '*', dayOfWeek: '*', }, }, })esto dará como resultado un horario, por ejemplo:
si hoy es 18 de febrero de 2022 7:00am
02/18/2022 08:00:00Z 02/18/2022 20:00:00Z 02/18/2022 08:00:00Z 02/18/2022 20:00:00Z 02/18/2022 08:00:00ZPodrías resolver esto teniendo 2 temporizadores, uno para las 8 am y otro para las 8 pm.