feat: media-send pacing na élke send (niet alleen tussen pagina's)

MEDIA_SEND_DELAY_MS pauzeert nu centraal in sendImageMessage ná elke
media-send, zodat ook afbeeldingen naar verschillende ontvangers niet
overlappen in de ene chromium-tab (staged-ghost race-risico). Per-pagina
delay uit messageHandler verwijderd.
This commit is contained in:
Eddy de Vink 2026-09-26 22:26:18 +02:00
commit 7673239933
5 changed files with 83 additions and 20 deletions

View file

@ -68,20 +68,16 @@ async function handleWebhook(payload) {
return
}
// Pacing gebeurt nu centraal in sendImageMessage (na élke media-send), zodat óók
// afbeeldingen naar verschillende ontvangers niet overlappen in de ene chromium-tab.
const pngPaths = getPngFilePaths(dienst)
if (!pngPaths || pngPaths.length === 0) {
await sendTextMessage(author, `Geen pagina's gevonden voor dienst ${dienstnummer}.`)
return
}
// Defensieve spreiding tussen pagina's (niet vóór de eerste): verlaagt de kans op
// gelijktijdige storage/upload-conflicten in de wwebjs-media-pipeline.
const mediaSendDelayMs = parseInt(process.env.MEDIA_SEND_DELAY_MS, 10) || 500
for (let i = 0; i < pngPaths.length; i++) {
const pngPath = pngPaths[i]
if (i > 0 && mediaSendDelayMs > 0) {
await new Promise(resolve => setTimeout(resolve, mediaSendDelayMs))
}
const filename = pngPath.split('/').pop()
try {
await sendImageMessage(author, pngPath, filename)