{"_id":"@anyq/rabbitmq","_rev":"7-ede6e30215538b681a3aabc88ba4cdf4","name":"@anyq/rabbitmq","dist-tags":{"latest":"0.5.0"},"versions":{"0.1.0":{"name":"@anyq/rabbitmq","version":"0.1.0","keywords":["anyq","queue","rabbitmq","amqp","message-queue"],"author":{"name":"Shantanu Sharma"},"license":"MIT","_id":"@anyq/rabbitmq@0.1.0","maintainers":[{"name":"sns45","email":"notifyshantanu@gmail.com"}],"homepage":"https://github.com/sns45/anyq#readme","bugs":{"url":"https://github.com/sns45/anyq/issues"},"dist":{"shasum":"0bb9d3be3354ce3b6a9ada8b11770369c983c28b","tarball":"https://registry.npmjs.org/@anyq/rabbitmq/-/rabbitmq-0.1.0.tgz","fileCount":17,"integrity":"sha512-KYwPDhaxb7PL+JV6zDGrXS0TTEHDaXt0q9q4uY70kOhNKCDn5+oU0Mjkjtk9Tc63q0galTN1Tna2doATcTPV3w==","signatures":[{"sig":"MEQCIDkpA6LOBgOzqR06n7clmQHE6ThR4qHen9qBDQzHum/dAiAusiZRVJJ9PLgStbU9WSEdnDolj4dIzw+sjQSPn4aP3g==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":51734},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","default":"./dist/index.js"}},"gitHead":"1210b51fe4a55144ebf5bc798db0732b4c89ddba","scripts":{"dev":"tsc --watch","build":"tsc","clean":"rm -rf dist","typecheck":"tsc --noEmit"},"_npmUser":{"name":"sns45","email":"notifyshantanu@gmail.com"},"repository":{"url":"git+https://github.com/sns45/anyq.git","type":"git","directory":"packages/rabbitmq"},"_npmVersion":"10.9.2","description":"RabbitMQ adapter for anyq","directories":{},"_nodeVersion":"22.17.0","dependencies":{"amqplib":"^0.10.4","@anyq/core":"workspace:*"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.3.3","@types/amqplib":"^0.10.5"},"peerDependencies":{"@anyq/core":"workspace:*"},"_npmOperationalInternal":{"tmp":"tmp/rabbitmq_0.1.0_1765990928997_0.48327241506887164","host":"s3://npm-registry-packages-npm-production"}},"0.1.1":{"name":"@anyq/rabbitmq","version":"0.1.1","keywords":["anyq","queue","rabbitmq","amqp","message-queue"],"author":{"name":"Shantanu Sharma"},"license":"MIT","_id":"@anyq/rabbitmq@0.1.1","maintainers":[{"name":"sns45","email":"notifyshantanu@gmail.com"}],"homepage":"https://github.com/sns45/anyq#readme","bugs":{"url":"https://github.com/sns45/anyq/issues"},"dist":{"shasum":"27a558097c72bf29b8637a7e5fe317fccf8d9d91","tarball":"https://registry.npmjs.org/@anyq/rabbitmq/-/rabbitmq-0.1.1.tgz","fileCount":18,"integrity":"sha512-kESCSnuiCLRftFbG32QftQCTUkWSorckE2Xh6LD4NjaQX2O02gfBlbPaNi8s08igdp6OeaYqAqgNCSbfwtTB1w==","signatures":[{"sig":"MEUCIAgzO/1Cz56uDuEBNW5/AKgU9RZfJ7XdayBj9vmDwcZiAiEA3LwXij+YYWNeR27pY8FO0vya4QsEWqW5id15FNZQVTk=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":53341},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","default":"./dist/index.js"}},"gitHead":"30128d564178a5a1d25b736b605bf69644178a0f","scripts":{"dev":"tsc --watch","build":"tsc","clean":"rm -rf dist","typecheck":"tsc --noEmit"},"_npmUser":{"name":"sns45","email":"notifyshantanu@gmail.com"},"repository":{"url":"git+https://github.com/sns45/anyq.git","type":"git","directory":"packages/rabbitmq"},"_npmVersion":"10.9.2","description":"RabbitMQ adapter for anyq","directories":{},"_nodeVersion":"22.17.0","dependencies":{"amqplib":"^0.10.4","@anyq/core":"workspace:*"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.3.3","@types/amqplib":"^0.10.5"},"peerDependencies":{"@anyq/core":"workspace:*"},"_npmOperationalInternal":{"tmp":"tmp/rabbitmq_0.1.1_1765991341294_0.1894986851820326","host":"s3://npm-registry-packages-npm-production"}},"0.3.0":{"name":"@anyq/rabbitmq","version":"0.3.0","keywords":["anyq","queue","rabbitmq","amqp","message-queue"],"author":"Shantanu Sharma","license":"MIT","_id":"@anyq/rabbitmq@0.3.0","maintainers":[{"name":"sns45","email":"notifyshantanu@gmail.com"}],"homepage":"https://github.com/sns45/anyq#readme","bugs":{"url":"https://github.com/sns45/anyq/issues"},"dist":{"shasum":"1d42cf930e181fdb90dc6293fc27815e92c49a3e","tarball":"https://registry.npmjs.org/@anyq/rabbitmq/-/rabbitmq-0.3.0.tgz","fileCount":18,"integrity":"sha512-bvKs57KGU8JrI66jta7EAVLS+G6RXt5B6Pv83Ktg2c6AKmWuW28c/xfN2sVSnpUTGceq9R+xyMD788TZ0ZCVbg==","signatures":[{"sig":"MEUCIGyIu/zCMBrt2VcezNSRT3MXn/Mg5JkOKl9SzUomt0e1AiEA5bhDriJ96u3QBF4ef29w+Z21yzqwPl29S1m+LdU7DFE=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":56579},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","shasum":"1d42cf930e181fdb90dc6293fc27815e92c49a3e","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","default":"./dist/index.js"}},"scripts":{"dev":"bun build ./src/index.ts --outdir ./dist --target bun --watch","build":"bun build ./src/index.ts --outdir ./dist --target bun && bun run build:types","clean":"rm -rf dist","typecheck":"tsc --noEmit","build:types":"tsc --build --force"},"_npmUser":{"name":"sns45","email":"notifyshantanu@gmail.com"},"_integrity":"sha512-bvKs57KGU8JrI66jta7EAVLS+G6RXt5B6Pv83Ktg2c6AKmWuW28c/xfN2sVSnpUTGceq9R+xyMD788TZ0ZCVbg==","repository":{"url":"https://github.com/sns45/anyq","type":"git","directory":"packages/rabbitmq"},"_npmVersion":"10.8.3","description":"RabbitMQ adapter for anyq","directories":{},"_nodeVersion":"24.3.0","dependencies":{"amqplib":"^0.10.4","@anyq/core":"0.3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.3.3","@types/amqplib":"^0.10.5"},"peerDependencies":{"@anyq/core":"0.3.0"},"_npmOperationalInternal":{"tmp":"tmp/rabbitmq_0.3.0_1781961971352_0.011131796566217211","host":"s3://npm-registry-packages-npm-production"}},"0.3.1":{"name":"@anyq/rabbitmq","version":"0.3.1","keywords":["anyq","queue","rabbitmq","amqp","message-queue"],"author":"Shantanu Sharma","license":"MIT","_id":"@anyq/rabbitmq@0.3.1","maintainers":[{"name":"sns45","email":"notifyshantanu@gmail.com"}],"homepage":"https://github.com/sns45/anyq#readme","bugs":{"url":"https://github.com/sns45/anyq/issues"},"dist":{"shasum":"0a55c2173d2c42f8441cdeffbe7d2ca37f3c3ee0","tarball":"https://registry.npmjs.org/@anyq/rabbitmq/-/rabbitmq-0.3.1.tgz","fileCount":18,"integrity":"sha512-YC704RjtHXEDwy2wL5Zia763IckfwMnd0UwnIfCwQHTYnsUR5534oDX+jepCvsD8DzKN3UxjIKzHYGFhwZ5eJQ==","signatures":[{"sig":"MEUCIQD+y6S4JLrfs3NneJU1RwK5i/ZbnWJdbBF6zEAppWEuCQIgX5DZVa/Kfcbf+WHeo1Io+xmdwA3wk0jmMqV3A1pxA4I=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":57165},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","shasum":"0a55c2173d2c42f8441cdeffbe7d2ca37f3c3ee0","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","default":"./dist/index.js"}},"scripts":{"dev":"bun build ./src/index.ts --outdir ./dist --target bun --watch","build":"bun build ./src/index.ts --outdir ./dist --target bun && bun run build:types","clean":"rm -rf dist","typecheck":"tsc --noEmit","build:types":"tsc --build --force"},"_npmUser":{"name":"sns45","email":"notifyshantanu@gmail.com"},"_integrity":"sha512-YC704RjtHXEDwy2wL5Zia763IckfwMnd0UwnIfCwQHTYnsUR5534oDX+jepCvsD8DzKN3UxjIKzHYGFhwZ5eJQ==","repository":{"url":"https://github.com/sns45/anyq","type":"git","directory":"packages/rabbitmq"},"_npmVersion":"10.8.3","description":"RabbitMQ adapter for anyq","directories":{},"_nodeVersion":"24.3.0","dependencies":{"amqplib":"^0.10.4","@anyq/core":"0.3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.3.3","@types/amqplib":"^0.10.5"},"peerDependencies":{"@anyq/core":"0.3.0"},"_npmOperationalInternal":{"tmp":"tmp/rabbitmq_0.3.1_1782054595840_0.2931540232146217","host":"s3://npm-registry-packages-npm-production"}},"0.3.2":{"name":"@anyq/rabbitmq","version":"0.3.2","keywords":["anyq","queue","rabbitmq","amqp","message-queue"],"author":"Shantanu Sharma","license":"MIT","_id":"@anyq/rabbitmq@0.3.2","maintainers":[{"name":"sns45","email":"notifyshantanu@gmail.com"}],"homepage":"https://github.com/sns45/anyq#readme","bugs":{"url":"https://github.com/sns45/anyq/issues"},"dist":{"shasum":"c2ba378a8a527a005eb6b93031efa53650339290","tarball":"https://registry.npmjs.org/@anyq/rabbitmq/-/rabbitmq-0.3.2.tgz","fileCount":18,"integrity":"sha512-DpiaKSpOBl9AVz3eLSi9V5dL45KsIcwoDl5il8ZQunYZjMHyPiOJRVZD+v8XE1PQH2YBR3OMYx+0GftvZl1RzA==","signatures":[{"sig":"MEYCIQC/22ITsdU0HSlEJkyt1I7kjCdBf1rfUFkrjGpV0ofazQIhAJzFUpCZYZcyba/Eh/ehnVpE5bYV7Vpq3qolUnsK07MJ","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":57165},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","shasum":"c2ba378a8a527a005eb6b93031efa53650339290","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","default":"./dist/index.js"}},"scripts":{"dev":"bun build ./src/index.ts --outdir ./dist --target bun --watch","build":"bun build ./src/index.ts --outdir ./dist --target bun && bun run build:types","clean":"rm -rf dist","typecheck":"tsc --noEmit","build:types":"tsc --build --force"},"_npmUser":{"name":"sns45","email":"notifyshantanu@gmail.com"},"_integrity":"sha512-DpiaKSpOBl9AVz3eLSi9V5dL45KsIcwoDl5il8ZQunYZjMHyPiOJRVZD+v8XE1PQH2YBR3OMYx+0GftvZl1RzA==","repository":{"url":"https://github.com/sns45/anyq","type":"git","directory":"packages/rabbitmq"},"_npmVersion":"10.8.3","description":"RabbitMQ adapter for anyq","directories":{},"_nodeVersion":"24.3.0","dependencies":{"amqplib":"^0.10.4","@anyq/core":"0.3.2"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.3.3","@types/amqplib":"^0.10.5"},"peerDependencies":{"@anyq/core":"0.3.2"},"_npmOperationalInternal":{"tmp":"tmp/rabbitmq_0.3.2_1784910262917_0.47463044260035625","host":"s3://npm-registry-packages-npm-production"}},"0.4.0":{"name":"@anyq/rabbitmq","version":"0.4.0","keywords":["anyq","queue","rabbitmq","amqp","message-queue"],"author":"Shantanu Sharma","license":"Apache-2.0","_id":"@anyq/rabbitmq@0.4.0","maintainers":[{"name":"sns45","email":"notifyshantanu@gmail.com"}],"homepage":"https://github.com/sns45/anyq#readme","bugs":{"url":"https://github.com/sns45/anyq/issues"},"dist":{"shasum":"6184efd5cc5cc36102f1eaa5792a643c3946903c","tarball":"https://registry.npmjs.org/@anyq/rabbitmq/-/rabbitmq-0.4.0.tgz","fileCount":20,"integrity":"sha512-Zrc1QOnxUR5FKzgD0GWk5HoBTsEZu5ZwmJ1SJFnF0fLYgs9lh/P6/C4CLqrXwdBfM+1xU6fNFn0hCELisLgx0Q==","signatures":[{"sig":"MEUCIEA7iP7q42lRsXMuHGusOKfNbfRVujJm1Nm98zb+demLAiEA45+Q916C5iNpTN8ICtBKtixqlFue9ebxeJPnR2wye/Q=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":69183},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","shasum":"6184efd5cc5cc36102f1eaa5792a643c3946903c","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","default":"./dist/index.js"}},"scripts":{"dev":"bun build ./src/index.ts --outdir ./dist --target bun --watch","build":"bun build ./src/index.ts --outdir ./dist --target bun && bun run build:types","clean":"rm -rf dist","typecheck":"tsc --noEmit","build:types":"tsc --build --force"},"_npmUser":{"name":"sns45","email":"notifyshantanu@gmail.com"},"_integrity":"sha512-Zrc1QOnxUR5FKzgD0GWk5HoBTsEZu5ZwmJ1SJFnF0fLYgs9lh/P6/C4CLqrXwdBfM+1xU6fNFn0hCELisLgx0Q==","repository":{"url":"https://github.com/sns45/anyq","type":"git","directory":"packages/rabbitmq"},"_npmVersion":"10.8.3","description":"RabbitMQ adapter for anyq","directories":{},"_nodeVersion":"26.3.0","dependencies":{"amqplib":"^0.10.4","@anyq/core":"0.4.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.3.3","@types/amqplib":"^0.10.5"},"peerDependencies":{"@anyq/core":"0.4.0"},"_npmOperationalInternal":{"tmp":"tmp/rabbitmq_0.4.0_1787860565294_0.014919649555452885","host":"s3://npm-registry-packages-npm-production"}},"0.5.0":{"name":"@anyq/rabbitmq","version":"0.5.0","description":"RabbitMQ adapter for anyq","type":"module","main":"./dist/index.js","module":"./dist/index.js","types":"./dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","default":"./dist/index.js"}},"scripts":{"build":"bun build ./src/index.ts --outdir ./dist --target bun && bun run build:types","build:types":"tsc --build --force","dev":"bun build ./src/index.ts --outdir ./dist --target bun --watch","typecheck":"tsc --noEmit","clean":"rm -rf dist"},"dependencies":{"@anyq/core":"0.5.0","amqplib":"^0.10.4"},"devDependencies":{"@types/amqplib":"^0.10.5","typescript":"^5.3.3"},"peerDependencies":{"@anyq/core":"0.5.0"},"keywords":["anyq","queue","rabbitmq","amqp","message-queue"],"license":"Apache-2.0","author":"Shantanu Sharma","repository":{"type":"git","url":"https://github.com/sns45/anyq","directory":"packages/rabbitmq"},"homepage":"https://github.com/sns45/anyq#readme","bugs":{"url":"https://github.com/sns45/anyq/issues"},"publishConfig":{"access":"public"},"_id":"@anyq/rabbitmq@0.5.0","_integrity":"sha512-A++JrGyXmDixtrooAVSQLPRXlHvPQdfLtgHl/pM/HFSHgYsyqckW+J0YWR8Abun+IWH1OXKYEEzLhpXhbegB/Q==","_nodeVersion":"26.3.0","_npmVersion":"10.8.3","shasum":"8ec61604f1f7974656df7a98d967a04b5ad1fe37","dist":{"integrity":"sha512-A++JrGyXmDixtrooAVSQLPRXlHvPQdfLtgHl/pM/HFSHgYsyqckW+J0YWR8Abun+IWH1OXKYEEzLhpXhbegB/Q==","shasum":"8ec61604f1f7974656df7a98d967a04b5ad1fe37","tarball":"https://registry.npmjs.org/@anyq/rabbitmq/-/rabbitmq-0.5.0.tgz","fileCount":20,"unpackedSize":69183,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIQC27JmsCE/39h5OAv2aYY3LPFRwQLCQbi62Mura7aEzAAIgL/gWwinuXs+DBTfIBzIx0LDDLgOjuvGL5DR/h61LCWg="}]},"_npmUser":{"name":"sns45","email":"notifyshantanu@gmail.com"},"directories":{},"maintainers":[{"name":"sns45","email":"notifyshantanu@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/rabbitmq_0.5.0_1788808991227_0.7436044632325329"},"_hasShrinkwrap":false}},"time":{"created":"2025-12-17T17:02:08.926Z","modified":"2026-09-07T19:23:11.536Z","0.1.0":"2025-12-17T17:02:09.134Z","0.1.1":"2025-12-17T17:09:01.448Z","0.3.0":"2026-06-20T13:26:11.487Z","0.3.1":"2026-06-21T15:09:55.979Z","0.3.2":"2026-07-24T16:24:23.049Z","0.4.0":"2026-08-27T19:56:05.420Z","0.5.0":"2026-09-07T19:23:11.365Z"},"bugs":{"url":"https://github.com/sns45/anyq/issues"},"author":"Shantanu Sharma","license":"Apache-2.0","homepage":"https://github.com/sns45/anyq#readme","keywords":["anyq","queue","rabbitmq","amqp","message-queue"],"repository":{"type":"git","url":"https://github.com/sns45/anyq","directory":"packages/rabbitmq"},"description":"RabbitMQ adapter for anyq","maintainers":[{"name":"sns45","email":"notifyshantanu@gmail.com"}],"readme":"# @anyq/rabbitmq\n\nRabbitMQ adapter for **anyq** - robust AMQP messaging.\n\n## Installation\n\n```bash\nnpm install @anyq/rabbitmq @anyq/core amqplib\n```\n\n## Usage\n\n```typescript\nimport { RabbitMQProducer, RabbitMQConsumer } from '@anyq/rabbitmq';\n\n// Create producer\nconst producer = new RabbitMQProducer({\n  connection: { url: 'amqp://localhost:5672' },\n  exchange: 'my-exchange',\n  routingKey: 'my-routing-key'\n});\n\n// Create consumer\nconst consumer = new RabbitMQConsumer({\n  connection: { url: 'amqp://localhost:5672' },\n  queue: 'my-queue',\n  exchange: 'my-exchange',\n  routingKey: 'my-routing-key'\n});\n\nawait producer.connect();\nawait consumer.connect();\n\n// Subscribe to messages\nawait consumer.subscribe(async (message) => {\n  console.log('Received:', message.data);\n  await message.ack();\n});\n\n// Publish messages\nawait producer.publish({\n  event: 'order.created',\n  orderId: '12345'\n});\n\n// Cleanup\nawait consumer.disconnect();\nawait producer.disconnect();\n```\n\n## Configuration\n\n```typescript\ninterface RabbitMQConfig {\n  connection: {\n    url: string;          // amqp://user:pass@host:port/vhost\n  };\n  exchange?: string;      // Exchange name\n  exchangeType?: 'direct' | 'topic' | 'fanout' | 'headers';\n  queue?: string;         // Queue name\n  routingKey?: string;    // Routing key\n  prefetch?: number;      // Prefetch count (QoS)\n  durable?: boolean;      // Durable queue/exchange\n}\n```\n\n## Features\n\n- Exchange types: direct, topic, fanout, headers\n- Durable queues and exchanges\n- Message acknowledgment\n- Prefetch/QoS control\n- Automatic reconnection\n- Dead letter queues\n\n## Retry strategies (0.3.0)\n\nThis adapter participates in the opt-in pluggable retry strategies from `@anyq/core`. Pass a strategy via `BaseQueueConfig.strategy` and `RabbitMQConsumer.applyStrategy()` takes over per-message error handling; omit it and the legacy catch behaviour (log only; message stays unacked) runs unchanged.\n\n| Capability | Support |\n|---|---|\n| `supportsNativeDelay` | **false** (this release) |\n| `park` | downgrades to in-process retry with a `warn` log, capped by `maxAttempts`. The broker-native TTL+DLX implementation is a follow-up |\n| `deadLetterMessage` | default (`nack(false)` → reject without requeue). Combine with a per-queue `x-dead-letter-exchange` for routing |\n\n> Behaviour change (0.3.0): `message.nack(false)` now actually rejects without requeue. Prior to 0.3.0, `onNack` ignored its `requeue` parameter and always requeued — dead-lettered messages would redeliver indefinitely. Code that relied on the old behaviour should pass `nack(true)` explicitly.\n\n```typescript\nimport { retryThenDeadLetter } from '@anyq/core';\n\nconst consumer = new RabbitMQConsumer({\n  connection: { url: 'amqp://localhost:5672' },\n  queue: { name: 'orders', durable: true },\n  exchange: { name: 'orders-ex', type: 'direct', durable: true },\n  bindingKey: 'orders',\n  strategy: retryThenDeadLetter({ maxAttempts: 5 }),\n});\n```\n\nSee `@anyq/core` for the full strategy catalogue.\n\n## License\n\nApache License 2.0. See [LICENSE](https://github.com/sns45/anyq/blob/main/LICENSE).\n","readmeFilename":"README.md"}