amqp-workflow v1.0.8
insipred from amqp-delegate
don't setup queue yourself, will automatically do it based on config
const { makeWorker, makeDelegator } = require("amqp-workflow"); const fetch = require("node-fetch");
const namespace = "amqp"; // default namespace const url = "amqp://username:password@localhost:5672";
makeWorker({
name: "gd.docs",
task: ({ appNo }) => ({ s3_path: ${appNo}.xxx.pdf
}),
url,
})
.start()
.then(() => {
// const mgmt_list_queues = "http://localhost:15672/api/queues";
// const toBase64 = (text) => Buffer.from(text).toString("base64");
// fetch(mgmt_list_queues, {
// headers: { Authorization: Basic ${toBase64("username:password")}
},
// })
// .then((r) => r.json())
// .then((r) =>
// console.log(
// available under ${namespace}
,
// r.reduce((m, { name }) => {
// if (name.startsWith(${namespace}.
)) m.push(name);
// return m;
// }, [])
// )
// );
});
const workflow = makeDelegator({ url }); workflow .start() .then(() => workflow.invoke("gd.docs", { appNo: "US12345678" })) .then(console.log);