postiz-app/apps/orchestrator/src/workflows/autopost.workflow.ts
2026-01-05 15:49:19 +07:00

30 lines
646 B
TypeScript

import { proxyActivities, sleep } from '@temporalio/workflow';
import { AutopostActivity } from '@gitroom/orchestrator/activities/autopost.activity';
const { autoPost } = proxyActivities<AutopostActivity>({
startToCloseTimeout: '10 minute',
taskQueue: 'main',
retry: {
maximumAttempts: 3,
backoffCoefficient: 1,
initialInterval: '2 minutes',
},
});
export async function autoPostWorkflow({
id,
immediately,
}: {
id: string;
immediately: boolean;
}) {
while (true) {
try {
if (immediately) {
await autoPost(id);
}
} catch (err) {}
immediately = true;
await sleep(3600000);
}
}