У меня есть облачная функция firebase для запуска при записи определенного файла в firebase firestore с именем onWriteFile
.
Функция onWriteFile
создает облачную задачу http для запуска в определенное время в будущем, как показано ниже:
const { CloudTasksClient } = require('@google-cloud/tasks')
exports.onWriteFile = async (event, context) => {
const project = 'my-projet'
const location = 'us-central1'
const queue = 'on-write-file'
const tasksClient = new CloudTasksClient()
const queuePath = tasksClient.queuePath(project, location, queue)
const url = `https://${location}-${project}.cloudfunctions.net/some-function`
//here is the core of question
const timestamp = event.value.fields.timestamp.integerValue
const json = { id: context.params.id }
const task = {
httpRequest: {
httpMethod: 'POST',
url,
body: Buffer.from(JSON.stringify(json)).toString('base64'),
headers: {
'Content-Type': 'application/json',
},
},
scheduleTime: {
seconds: timestamp
}
}
await tasksClient.createTask({ parent: queuePath, task })
};
Для меня это нормально работает.
Но как создать количество задач с разницей в 10 секунд, например, в одной и той же функции onWrieteFile
?