{"_id":"@socket.io/redis-adapter","_rev":"10-29583466365ea717e287d0c86a95228d","name":"@socket.io/redis-adapter","dist-tags":{"latest":"8.3.0"},"versions":{"7.0.0":{"name":"@socket.io/redis-adapter","version":"7.0.0","description":"The Socket.IO Redis adapter, allowing to broadcast events between several Socket.IO servers","license":"MIT","repository":{"type":"git","url":"git+ssh://git@github.com/socketio/socket.io-redis-adapter.git"},"main":"./dist/index.js","types":"./dist/index.d.ts","scripts":{"test":"npm run format:check && tsc && nyc mocha --require ts-node/register test/index.ts","format:check":"prettier --parser typescript --check 'lib/**/*.ts' 'test/**/*.ts'","format:fix":"prettier --parser typescript --write 'lib/**/*.ts' 'test/**/*.ts'","prepack":"tsc"},"dependencies":{"debug":"~4.3.1","notepack.io":"~2.2.0","socket.io-adapter":"~2.3.0","uid2":"0.0.3"},"devDependencies":{"@types/expect.js":"^0.3.29","@types/mocha":"^8.2.1","@types/node":"^14.14.7","@types/redis":"^2.8.28","expect.js":"0.3.1","ioredis":"^4.0.0","mocha":"^3.4.2","nyc":"^15.1.0","prettier":"^2.1.2","redis":"^3.1.2","socket.io":"^4.1.1","socket.io-client":"^4.1.1","ts-node":"^9.1.1","typescript":"^4.0.5"},"engines":{"node":">=10.0.0"},"gitHead":"3242d8e91baf94720df256ab422ec5c037f6a9e1","bugs":{"url":"https://github.com/socketio/socket.io-redis-adapter/issues"},"homepage":"https://github.com/socketio/socket.io-redis-adapter#readme","_id":"@socket.io/redis-adapter@7.0.0","_nodeVersion":"12.19.0","_npmVersion":"6.14.8","dist":{"integrity":"sha512-ioqzSUH2XvrBKm70bphTeLwBSPUU0n+w/Qkz11ryKBn6IIT4GJxyVOpodVBGnmDpxhT31EImQTZRT1ZueSTiTQ==","shasum":"5c71abb468f4c98d7297a5b47e1b504e34fc1814","tarball":"https://registry.npmjs.org/@socket.io/redis-adapter/-/redis-adapter-7.0.0.tgz","fileCount":6,"unpackedSize":44936,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgmwgLCRA9TVsSAnZWagAAA6YP/jlAGVaUccCmUI6dkRWx\nMvY2p3vRcCOcMU1o9UQsbFIJ6Cw4tqQjxpGcumapOzPpqzUODk6bMQkWZSnB\n9qSld45ulzQAlp/YohSreAAcKs2VcgkUJyZr1I8bOSQLYioCtZoBrZE/YWNq\nyuTMY79vbAdpqeP9NOgn6SL96qPGHkfjR/CptJPBhy80nNARh/alXveQDrPR\ndxSjMKvUuzNwCfEoRD79menYnB6h57AITA9b4RcVg/bNJD+lVvsZsdKWr4i+\nVF8waddnZMSd5RDAlF3UxoXtQxm5dJSBRL0vzNknicoLv9KRB26j9CiQcSna\nslOrj09Jkj/ba1SejDYzqqvXwI3L+gFiHBZXUahgPLNh8lsCIQliY+aBsqYf\n5Nyw/rqwgdLl1cojiYqnaDTW+Oo0rVGEjEz9uAnY3NdhsQXgOCJLHsut9m0x\nQVByBzLXRPSH97B5W3X3sIhXmxGNAXk7qtr9txqpKkXHpvucAFaowWJWKY0n\nr9tN1SFKa7Lh6kEtD3Ijc3U8XB+R581W8NAu2dHrqgkqGyFD4KeMbQQJ8s/6\n8iHvyXVTgQ1FU7ZIu32JZzeOt2X2xm5HwCPa+qKWMj4AUe9X+Ea9TPhqA3r6\nMncZJ9on/vGGFdPM76uydJ4EK6UF2j1do7uD9LXRokuhN8+0P/mf+8y0IaAI\noSlP\r\n=hfTb\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIHDXQpQ1Ue8I5jQ4pImtonBDxhQ4LZN0g+Yp6F7u4qFkAiEA8gVYiNP3u/kNoSGfO+zPx+w8MoUZl1KZFDjsbFQbJiE="}]},"_npmUser":{"name":"darrachequesne","email":"damien.arrachequesne@gmail.com"},"directories":{},"maintainers":[{"name":"darrachequesne","email":"damien.arrachequesne@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/redis-adapter_7.0.0_1620772874885_0.06631204377786304"},"_hasShrinkwrap":false},"7.0.1":{"name":"@socket.io/redis-adapter","version":"7.0.1","description":"The Socket.IO Redis adapter, allowing to broadcast events between several Socket.IO servers","license":"MIT","repository":{"type":"git","url":"git+ssh://git@github.com/socketio/socket.io-redis-adapter.git"},"main":"./dist/index.js","types":"./dist/index.d.ts","scripts":{"test":"npm run format:check && tsc && nyc mocha --require ts-node/register test/index.ts","format:check":"prettier --parser typescript --check 'lib/**/*.ts' 'test/**/*.ts'","format:fix":"prettier --parser typescript --write 'lib/**/*.ts' 'test/**/*.ts'","prepack":"tsc"},"dependencies":{"debug":"~4.3.1","notepack.io":"~2.2.0","socket.io-adapter":"~2.3.0","uid2":"0.0.3"},"devDependencies":{"@types/expect.js":"^0.3.29","@types/mocha":"^8.2.1","@types/node":"^14.14.7","@types/redis":"^2.8.28","expect.js":"0.3.1","ioredis":"^4.0.0","mocha":"^3.4.2","nyc":"^15.1.0","prettier":"^2.1.2","redis":"^3.1.2","socket.io":"^4.1.1","socket.io-client":"^4.1.1","ts-node":"^9.1.1","typescript":"^4.0.5"},"engines":{"node":">=10.0.0"},"gitHead":"934155dcf8ee2a11049909f14829079e4445e3fb","bugs":{"url":"https://github.com/socketio/socket.io-redis-adapter/issues"},"homepage":"https://github.com/socketio/socket.io-redis-adapter#readme","_id":"@socket.io/redis-adapter@7.0.1","_nodeVersion":"12.19.0","_npmVersion":"6.14.8","dist":{"integrity":"sha512-0pJRwRW7lH9FCeyMfjOry8qXemhGan2HsapkoKGzh4VkGOP/aVr1ukd5WyUOaIRSsVjBVXnYU0FJNmWAzPqaQw==","shasum":"e39dac4a75f48b4f77a96770c625038b167b9ad3","tarball":"https://registry.npmjs.org/@socket.io/redis-adapter/-/redis-adapter-7.0.1.tgz","fileCount":6,"unpackedSize":47557,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIHs0tcjIt+hg0Hl7mvV2X7WgJK/EELZmqNfUHTyt3TkSAiA0Wni6Zn88jiNoRIRb/LTAU5tLNCm3xAZ0Qa101KsCFQ=="}]},"_npmUser":{"name":"darrachequesne","email":"damien.arrachequesne@gmail.com"},"directories":{},"maintainers":[{"name":"darrachequesne","email":"damien.arrachequesne@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/redis-adapter_7.0.1_1636961088976_0.7859916765423316"},"_hasShrinkwrap":false},"7.1.0":{"name":"@socket.io/redis-adapter","version":"7.1.0","description":"The Socket.IO Redis adapter, allowing to broadcast events between several Socket.IO servers","license":"MIT","repository":{"type":"git","url":"git+ssh://git@github.com/socketio/socket.io-redis-adapter.git"},"main":"./dist/index.js","types":"./dist/index.d.ts","scripts":{"test":"npm run format:check && tsc && npm run test:redis-v4 && npm run test:redis-v4-specific-channel && npm run test:redis-v3 && npm run test:ioredis","test:redis-v4":"nyc mocha --bail --require ts-node/register test/index.ts","test:redis-v4-specific-channel":"SPECIFIC_CHANNEL=1 nyc mocha --bail --require ts-node/register test/index.ts","test:redis-v3":"REDIS_CLIENT=redis-v3 nyc mocha --bail --require ts-node/register test/index.ts","test:ioredis":"REDIS_CLIENT=ioredis nyc mocha --bail --require ts-node/register test/index.ts","format:check":"prettier --parser typescript --check 'lib/**/*.ts' 'test/**/*.ts'","format:fix":"prettier --parser typescript --write 'lib/**/*.ts' 'test/**/*.ts'","prepack":"tsc"},"dependencies":{"debug":"~4.3.1","notepack.io":"~2.2.0","socket.io-adapter":"~2.3.0","uid2":"0.0.3"},"devDependencies":{"@types/expect.js":"^0.3.29","@types/mocha":"^8.2.1","@types/node":"^14.14.7","expect.js":"0.3.1","ioredis":"^4.0.0","mocha":"^3.4.2","nyc":"^15.1.0","prettier":"^2.1.2","redis":"^4.0.0","redis-v3":"npm:redis@^3.1.2","socket.io":"^4.1.1","socket.io-client":"^4.1.1","ts-node":"^9.1.1","typescript":"^4.0.5"},"engines":{"node":">=10.0.0"},"gitHead":"e0850c8028d9ee46e85022db41c5d1cd33db618e","bugs":{"url":"https://github.com/socketio/socket.io-redis-adapter/issues"},"homepage":"https://github.com/socketio/socket.io-redis-adapter#readme","_id":"@socket.io/redis-adapter@7.1.0","_nodeVersion":"12.19.0","_npmVersion":"6.14.8","dist":{"integrity":"sha512-vbsNJKUQgtVHcOqNL2ac8kSemTVNKHRzYPldqQJt0eFKvlAtAviuAMzBP0WmOp5OoRLQMjhVsVvgMzzMsVsK5g==","shasum":"66f854da3cc47b80a9f5d287e93a58af16e5c3fb","tarball":"https://registry.npmjs.org/@socket.io/redis-adapter/-/redis-adapter-7.1.0.tgz","fileCount":6,"unpackedSize":51090,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhpWUMCRA9TVsSAnZWagAAV2AP/iGPe8ludXcyGkuUm1sr\nI9hL3Adfw1jvC+RXOBYXASH5KGjW2LM7KY7qiwbyZMotvqZWGyEjNmdc2und\nXPfItq81g2H0OLmoo51NWtk1WdPLdV2pEegb0F4wxKl66AIC+R9DIeJsRtO2\nn6lYRujr3XXbAMhTqcW2NnY1BbTXrj93Q/sLVJOwF14berr2z4D1L5BVlTQK\nuN8WMKO0ZsZHf0oHVcJYpwwYpwHi40xsV+OwWXzdS2u2wfPwt/YTinmlwGp8\nOtthxCzK4JMgfJZ7Gp4jjnJGvNvkYmYfafxzSXDCfmdln4Yc8GQkzFHCVjzZ\nR42tZCBQeJaB+AeEx6QuvFy67C90YYQHE+rIN8UW51S6i2alSnzSSGLfLU4B\nU8yc3gzH8SlyjXwqWX9AtpXFt346B7DP8uif0FtsQBsX2k240aD2z3OKahXu\njbkNhixeF/zI2FtmV33wUkifA0vMROSFD7cHAeH9bRb7XkjyZUAYc+H4BKTO\nu+vYl8wPtdGE8btczXM/cmHpfibV6TfpmcDKW+z9i+n38ZZAVgHZbm6fjljj\nL7n5Ah/uMTIsRjaPPqwQUx644s7XBdrp/gvFizCCpJRYQJ6v0ykeQKwY54ZR\n9uyObIzsOsL38JdHuAVdyvvz7jU+im17WP2ZdcBfNz7EBzbdRq2nkB0jLx4N\nbryn\r\n=10t7\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIFygpuVzr+POVghPyWgg4Q3fHIe7i7zVeFrJbra42QUuAiBIbBQFTc3IrXdf2Ua+NLGmGOGsIDbUpTLTP6kgX+TkBg=="}]},"_npmUser":{"name":"darrachequesne","email":"damien.arrachequesne@gmail.com"},"directories":{},"maintainers":[{"name":"darrachequesne","email":"damien.arrachequesne@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/redis-adapter_7.1.0_1638229260243_0.301622977216341"},"_hasShrinkwrap":false},"7.2.0":{"name":"@socket.io/redis-adapter","version":"7.2.0","description":"The Socket.IO Redis adapter, allowing to broadcast events between several Socket.IO servers","license":"MIT","repository":{"type":"git","url":"git+ssh://git@github.com/socketio/socket.io-redis-adapter.git"},"main":"./dist/index.js","types":"./dist/index.d.ts","scripts":{"test":"npm run format:check && tsc && npm run test:redis-v4 && npm run test:redis-v4-specific-channel && npm run test:redis-v3 && npm run test:ioredis","test:redis-v4":"nyc mocha --bail --require ts-node/register test/index.ts","test:redis-v4-specific-channel":"SPECIFIC_CHANNEL=1 nyc mocha --bail --require ts-node/register test/index.ts","test:redis-v3":"REDIS_CLIENT=redis-v3 nyc mocha --bail --require ts-node/register test/index.ts","test:ioredis":"REDIS_CLIENT=ioredis nyc mocha --bail --require ts-node/register test/index.ts","format:check":"prettier --parser typescript --check 'lib/**/*.ts' 'test/**/*.ts'","format:fix":"prettier --parser typescript --write 'lib/**/*.ts' 'test/**/*.ts'","prepack":"tsc"},"dependencies":{"debug":"~4.3.1","notepack.io":"~2.2.0","socket.io-adapter":"^2.4.0","uid2":"0.0.3"},"devDependencies":{"@types/expect.js":"^0.3.29","@types/mocha":"^8.2.1","@types/node":"^14.14.7","expect.js":"0.3.1","ioredis":"^4.0.0","mocha":"^3.4.2","nyc":"^15.1.0","prettier":"^2.1.2","redis":"^4.0.0","redis-v3":"npm:redis@^3.1.2","socket.io":"^4.5.0","socket.io-client":"^4.1.1","ts-node":"^9.1.1","typescript":"^4.0.5"},"engines":{"node":">=10.0.0"},"gitHead":"b4215cdbc00af96eac37a0b9cc0fbcb793384b53","bugs":{"url":"https://github.com/socketio/socket.io-redis-adapter/issues"},"homepage":"https://github.com/socketio/socket.io-redis-adapter#readme","_id":"@socket.io/redis-adapter@7.2.0","_nodeVersion":"16.13.1","_npmVersion":"8.1.2","dist":{"integrity":"sha512-/r6oF6Myz0K9uatB/pfCi0BhKg/KRMh1OokrqcjlNz6aq40WiXdFLRbHJQuwGHq/KvB+D6141K+IynbVxZGvhw==","shasum":"d0a1c406631bf52556073cc37b764c318efe690f","tarball":"https://registry.npmjs.org/@socket.io/redis-adapter/-/redis-adapter-7.2.0.tgz","fileCount":7,"unpackedSize":52002,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQC6olXaAQ/CCbDtCVXy7t6Xb0iD5/9QYDLRDWQCMFYUdQIhAJPbcg88GuAu88uahQZkvRUUe2anqVoaQ0xwAZMCV5hU"}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJicU42ACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmrP+w//b8+FbG1yNkXnYYi43xO0QTIqD8l/vBmUdBERY0MCXjNodgDV\r\nSDIkKwmBc/9b/RK1xQTByMiGsniBC+/4HUtGha1qb/sJewA33j0rQ0tjbJpd\r\nTTEy0q9POJ0MJSwP4Ihlf/xtqR+dlGkGx66ns1owjVVFKmF44bGswmerCHTw\r\ns+8wc7NfYD50WstexfTVVHIR5YRgLBz0RUKK+jaFbMgkJNXmyQE3wpIljUVh\r\n+2qXkVZlgQN/IDIS3uawmbzifxo5SW2hZZsfG3A8vS93LLwTBTYK1dNl1VIB\r\nHJiwj+uanW1IZ7YL7Q/D7WvzOtoLNQOlfjrqBBL84b69HPvEac+54NLR9hZ0\r\nQy6IskxjkPFSG87M/cnxeX3H9M60VAomRDOF9DJmfs6pvxkqmGtP93ajjUUw\r\n1vcFbze769Su1Pjsp4Fxgmy0aoDcMwsNWfRUkhz37zs8RUlKmjkwfJxHbS/K\r\nQNi9WYZI2BJ0c33MtXTkDxANgjUNdnhLatCI9ZKwUaXIZQHBKt6StbIwlQUb\r\nneLJxsPwKTlX7QcexuIULYPF1LMtNygIv07YwPvZRSSlJlzHRvlbHqh2ARp/\r\n4qk87u0jua7awUyR7CUfUhQFTG5Yej86xwPq0vObwV2Ivs+INy1TGjgltVFZ\r\nqN3mbC2fT3Hjvir/lDjFkhX7SjGCZF49wfQ=\r\n=9rK5\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"darrachequesne","email":"damien.arrachequesne@gmail.com"},"directories":{},"maintainers":[{"name":"darrachequesne","email":"damien.arrachequesne@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/redis-adapter_7.2.0_1651592758209_0.14090129800813345"},"_hasShrinkwrap":false},"8.0.0":{"name":"@socket.io/redis-adapter","version":"8.0.0","description":"The Socket.IO Redis adapter, allowing to broadcast events between several Socket.IO servers","license":"MIT","repository":{"type":"git","url":"git+ssh://git@github.com/socketio/socket.io-redis-adapter.git"},"main":"./dist/index.js","types":"./dist/index.d.ts","scripts":{"test":"npm run format:check && tsc && npm run test:redis-v4 && npm run test:redis-v4-specific-channel && npm run test:redis-v3 && npm run test:ioredis","test:redis-v4":"nyc mocha --bail --require ts-node/register test/index.ts","test:redis-v4-specific-channel":"SPECIFIC_CHANNEL=1 nyc mocha --bail --require ts-node/register test/index.ts","test:redis-v3":"REDIS_CLIENT=redis-v3 nyc mocha --bail --require ts-node/register test/index.ts","test:ioredis":"REDIS_CLIENT=ioredis nyc mocha --bail --require ts-node/register test/index.ts","format:check":"prettier --parser typescript --check 'lib/**/*.ts' 'test/**/*.ts'","format:fix":"prettier --parser typescript --write 'lib/**/*.ts' 'test/**/*.ts'","prepack":"tsc"},"dependencies":{"debug":"~4.3.1","notepack.io":"~3.0.1","socket.io-adapter":"^2.4.0","uid2":"1.0.0"},"devDependencies":{"@types/expect.js":"^0.3.29","@types/mocha":"^8.2.1","@types/node":"^14.14.7","expect.js":"0.3.1","ioredis":"^4.0.0","mocha":"^10.1.0","nyc":"^15.1.0","prettier":"^2.1.2","redis":"^4.0.0","redis-v3":"npm:redis@^3.1.2","socket.io":"^4.5.0","socket.io-client":"^4.1.1","ts-node":"^9.1.1","typescript":"^4.0.5"},"engines":{"node":">=10.0.0"},"gitHead":"28a3444fd37d69c5e657533f6fd7af44abf7fd35","bugs":{"url":"https://github.com/socketio/socket.io-redis-adapter/issues"},"homepage":"https://github.com/socketio/socket.io-redis-adapter#readme","_id":"@socket.io/redis-adapter@8.0.0","_nodeVersion":"16.15.1","_npmVersion":"8.11.0","dist":{"integrity":"sha512-CbXmsl90xVK/H7aITNKJsa4RcmaYByezDOf8EBGj9LdEoblQTJZGvH67kuoIM2aalzSdUf0Lk00XPVs8DujTNw==","shasum":"3e4b4cf4d237faf630494dddcffc8dd5a2bf5726","tarball":"https://registry.npmjs.org/@socket.io/redis-adapter/-/redis-adapter-8.0.0.tgz","fileCount":7,"unpackedSize":45964,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIHJPuWdISd000PzukX+3bJh6wJo99lfOc/1tJuickxA2AiBQMSYzZs01NNqrfBqdNgkjJM8U0hgF8JqZoQCPIyBObQ=="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjkFohACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmpBgQ/+ONMrsYsQh/MwrCwxq5IJINW8ej+E3jhwZx7DRrSIhm0ke6yW\r\nt6xcqMjFEOpD3+fZNrG5oGvlXdS1CMTaMKeF7mOTSr6WytlbEo8jl8g+yvCR\r\nCsGuQskkP1cu4xvbBUN/HOR+pavoKUfbR/Et7Sq2td2oDOZl8gvzB633Gbl0\r\n9wIJ6HdBvd4OOBDyYE2ZZWwg9VLt7Y96PvqwC48JFSuAjNqAcCBw7Ez83uhV\r\n1VoVgI4iKt2D1hssjZQAcBXqzG8ozl44ezyPSq4vYMQdLp+fNMWj2OBTEmTP\r\nJHcKAlKUZsWpaR+/ioQv+O8wk5TS3kWI+PTZsMxm2bu7XkXJCNFSOWQYOmfh\r\nekkibB6ikSXrizMBMo6mMJKCVL/n46RUy40NvysIwbEMg9YMVNfvRREnDQXu\r\nJHii9aPDab4YNfycsiRLo1hGF6cr0DEhSccS1cJvyfFwtyeh/MjImAy6XQ6w\r\nmuM3t3HO7b1pzjoN3CtZL6Bf/Ko8WmPgvUHLQdBu00t3iolpWeZ9t7tHEp8b\r\nn3RTkAh43l7VmI+iBAHg3OSSIGaj7LhOl+06NrTCFfhj4CVon73atMQJ2yb6\r\nYU4irEmA7UhjXFDL2VQtCp6mOwWcZstUtjSO3E9BtWJYwnHQEbTWvaB7bwyO\r\neYSipSJA1AznDx5YPvueAtUc5fYty6rN3Ds=\r\n=koy+\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"darrachequesne","email":"damien.arrachequesne@gmail.com"},"directories":{},"maintainers":[{"name":"darrachequesne","email":"damien.arrachequesne@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/redis-adapter_8.0.0_1670404640984_0.8315563735149001"},"_hasShrinkwrap":false},"8.0.1":{"name":"@socket.io/redis-adapter","version":"8.0.1","description":"The Socket.IO Redis adapter, allowing to broadcast events between several Socket.IO servers","license":"MIT","repository":{"type":"git","url":"git+ssh://git@github.com/socketio/socket.io-redis-adapter.git"},"main":"./dist/index.js","types":"./dist/index.d.ts","scripts":{"test":"npm run format:check && tsc && npm run test:redis-v4 && npm run test:redis-v4-specific-channel && npm run test:redis-v3 && npm run test:ioredis","test:redis-v4":"nyc mocha --bail --require ts-node/register test/index.ts","test:redis-v4-specific-channel":"SPECIFIC_CHANNEL=1 nyc mocha --bail --require ts-node/register test/index.ts","test:redis-v3":"REDIS_CLIENT=redis-v3 nyc mocha --bail --require ts-node/register test/index.ts","test:ioredis":"REDIS_CLIENT=ioredis nyc mocha --bail --require ts-node/register test/index.ts","format:check":"prettier --parser typescript --check 'lib/**/*.ts' 'test/**/*.ts'","format:fix":"prettier --parser typescript --write 'lib/**/*.ts' 'test/**/*.ts'","prepack":"tsc"},"dependencies":{"debug":"~4.3.1","notepack.io":"~3.0.1","socket.io-adapter":"~2.4.0","uid2":"1.0.0"},"devDependencies":{"@types/expect.js":"^0.3.29","@types/mocha":"^8.2.1","@types/node":"^14.14.7","expect.js":"0.3.1","ioredis":"^4.0.0","mocha":"^10.1.0","nyc":"^15.1.0","prettier":"^2.1.2","redis":"^4.0.0","redis-v3":"npm:redis@^3.1.2","socket.io":"^4.5.0","socket.io-client":"^4.1.1","ts-node":"^9.1.1","typescript":"^4.0.5"},"engines":{"node":">=10.0.0"},"gitHead":"9b940b8ede5f87575fbc60bbb9e81c7f0a36c365","bugs":{"url":"https://github.com/socketio/socket.io-redis-adapter/issues"},"homepage":"https://github.com/socketio/socket.io-redis-adapter#readme","_id":"@socket.io/redis-adapter@8.0.1","_nodeVersion":"16.15.1","_npmVersion":"8.11.0","dist":{"integrity":"sha512-qjYRaf+Xp/OEkQDqWwEXnCjcuBUtVCrV1loXTIqICF4D+HHAv4T4jgPHUagyzJQ9M/RmJL25GlG15wLjV2O37g==","shasum":"a4fee5bf73158a3b04673cb7bc3cd4c86671d062","tarball":"https://registry.npmjs.org/@socket.io/redis-adapter/-/redis-adapter-8.0.1.tgz","fileCount":7,"unpackedSize":45964,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIH1QdMCVSnkUCKJLw3vbk84CqfMycb8b8/dB8tY9nb+oAiAvKtyC+nGjICRKDa8W4o2JQqEwNSX/f+3qETs/ARLmUw=="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjvyfFACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmoxvw/+OKykYWHghPYFb5YzQiz0blgVST8M9ksgRSERLbu9pksAcvTj\r\n5Q30hzAo6kHrTJjHP9MNT2s61IKkGRHpCMcAfEGZGSFEG/Al9P6OdcWRztzU\r\nzQcA6jVXkhN0zRK6zO0hSqhyOOSL/qtUqyF30dtgbT9M6oaWbqoQzmhmUPQy\r\njzkmCKZbK25gBzEXZsYeVH2xeBXatfP+5lKhMh1mhBhaqV2MxTISEaySCuw7\r\nkqGLgsCmSq7W0+wT68pNoTKbhRGKsUu+JEJejbgnW5tAllnUe3RqaI623J0w\r\nVy2G546V2Ucb6pEUziFE8JYdhx3sD51tiQHp4Cc8Z00maVBZc9wyjRhRGKJH\r\ntFpIG0xWhl+u0kwxUxA2Xl0NZG13yV0a2OS/qzipLzE/eNUjhezCpclKJKt1\r\nYWSzmMHWcawYHKVCGFejw52/IGJ1VefFTxFyU89BBuq+au+exkriLJTN7r9m\r\nj/6hhVWzOLLq2N3hPusiNQ/92NoLHKrPxmLXf2rD5zM1IMCm8Jl59OpYd0/X\r\n6xFPX7pCbj323Zzr2xli8RuN5Ghh1hU4W8AckZMQi5DcNYS63dFzBIeFIrRV\r\n3LIP+zkWOJ6RdNzhwm4yJM4yrbP/DJtI33+x2ruWbL+csOeA4a2WywpEq6b8\r\nj+P1VRtGYl4r2z9eEw59+jWDEhBE9CuSFjU=\r\n=vpQ6\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"darrachequesne","email":"damien.arrachequesne@gmail.com"},"directories":{},"maintainers":[{"name":"darrachequesne","email":"damien.arrachequesne@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/redis-adapter_8.0.1_1673471941177_0.38897863703573665"},"_hasShrinkwrap":false},"8.1.0":{"name":"@socket.io/redis-adapter","version":"8.1.0","description":"The Socket.IO Redis adapter, allowing to broadcast events between several Socket.IO servers","license":"MIT","repository":{"type":"git","url":"git+ssh://git@github.com/socketio/socket.io-redis-adapter.git"},"main":"./dist/index.js","types":"./dist/index.d.ts","scripts":{"test":"npm run format:check && tsc && npm run test:redis-v4 && npm run test:redis-v4-specific-channel && npm run test:redis-v3 && npm run test:ioredis","test:redis-v4":"nyc mocha --bail --require ts-node/register test/index.ts","test:redis-v4-specific-channel":"SPECIFIC_CHANNEL=1 nyc mocha --bail --require ts-node/register test/index.ts","test:redis-v3":"REDIS_CLIENT=redis-v3 nyc mocha --bail --require ts-node/register test/index.ts","test:ioredis":"REDIS_CLIENT=ioredis nyc mocha --bail --require ts-node/register test/index.ts","format:check":"prettier --parser typescript --check 'lib/**/*.ts' 'test/**/*.ts'","format:fix":"prettier --parser typescript --write 'lib/**/*.ts' 'test/**/*.ts'","prepack":"tsc"},"dependencies":{"debug":"~4.3.1","notepack.io":"~3.0.1","uid2":"1.0.0"},"peerDependencies":{"socket.io-adapter":"^2.4.0"},"devDependencies":{"@types/expect.js":"^0.3.29","@types/mocha":"^8.2.1","@types/node":"^14.14.7","expect.js":"0.3.1","ioredis":"^4.0.0","mocha":"^10.1.0","nyc":"^15.1.0","prettier":"^2.1.2","redis":"^4.0.0","redis-v3":"npm:redis@^3.1.2","socket.io":"^4.5.0","socket.io-client":"^4.1.1","ts-node":"^9.1.1","typescript":"^4.0.5"},"engines":{"node":">=10.0.0"},"gitHead":"08f2de9f81a89f01e35890b3d3ec2e220a7f1cda","bugs":{"url":"https://github.com/socketio/socket.io-redis-adapter/issues"},"homepage":"https://github.com/socketio/socket.io-redis-adapter#readme","_id":"@socket.io/redis-adapter@8.1.0","_nodeVersion":"16.15.1","_npmVersion":"8.11.0","dist":{"integrity":"sha512-8nGMKcQ+DWpgefxA/Pi25aLajVilRPKwu29mZXu5cT+WGVYItcCkfMr4RsMmyYXUyJf00mN+7WinVLihmJwpXA==","shasum":"5db32c97cc6a73cd450a82bc157479ae927aa87c","tarball":"https://registry.npmjs.org/@socket.io/redis-adapter/-/redis-adapter-8.1.0.tgz","fileCount":7,"unpackedSize":47732,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCiUSwM8aPvYjq2rTawmJx5puQbJwZhTXsiUJottVymtAIhAKbiBJvneBV/edt/WkqYDJ9DOHQJW+84ehhZubqdlI3K"}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJj41gWACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmpysw//d1AvOXk1FeG8A6/pW9RjamifYb3lCvgwtarmpA8oMpheH1d8\r\nqNpZrt/W0OL3t/2txvsJRyBVB3mvJc7wbiJOWlxKT4cW+sdQuhdgDNGyF+6K\r\n+pq9tT4P/7uI7b7sDyGoz8Tg7i1meIaOb+ldDHRVN6UFsxXt0bs+1a59SCIE\r\nDNisQkpmq0MTgZu6k6L6d/Hh98eCnf9iHKXcUag0JdSS03wTIwHecEYpGW1r\r\n/8BMqtyUqQOcXgdTHSfXGkNYE/YPCILUdT0PWmjn7jx5DF5/WGq5ymCwESnE\r\n0WYyE8iyGuqjtl9MyCaAvuacvPgAB/Bkn3EBEOEeFkZnJPiRts7mnejSZVqS\r\nzKXkvGNkU67Z02MR5LZBE7wtFLCvob54DNpP2u1H7BF3RbfJJtdODxRxVI42\r\nSOKcaegFXqipPcLHTL8vOQk6xmUL079YLHRR/xqIvXP23A3xd5thadiyUJXx\r\n1nHJDcp4msypJcYu1Fk+ZK+c9iiaeZcgmKqcmaXdg+e0tASJEVzBilHivltj\r\nDMJ+V3XnB9PShx2RykbSNRtBGIq62L1WDV4Ti0n/H7sZgaArK4e+RbUkRfHI\r\nbj7Q/HNSSmAp2hzK5Qq8Q1rwmYPlJdF0V97YIabonZadkRvs7HwV/UWtGrQq\r\nuWHh+lmZXpHx8qP9RcG/qaMWe8lPO4n4HMc=\r\n=XsVb\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"darrachequesne","email":"damien.arrachequesne@gmail.com"},"directories":{},"maintainers":[{"name":"darrachequesne","email":"damien.arrachequesne@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/redis-adapter_8.1.0_1675843606386_0.702003102733795"},"_hasShrinkwrap":false},"8.2.0":{"name":"@socket.io/redis-adapter","version":"8.2.0","description":"The Socket.IO Redis adapter, allowing to broadcast events between several Socket.IO servers","license":"MIT","repository":{"type":"git","url":"git+ssh://git@github.com/socketio/socket.io-redis-adapter.git"},"main":"./dist/index.js","types":"./dist/index.d.ts","scripts":{"test":"npm run format:check && tsc && npm run test:default && npm run test:redis-v4-specific-channel && npm run test:redis-v3 && npm run test:ioredis && npm run test:sharded","test:default":"nyc mocha --bail --require ts-node/register test/*.ts","test:redis-v4-specific-channel":"SPECIFIC_CHANNEL=1 npm run test:default","test:redis-v3":"REDIS_CLIENT=redis-v3 npm run test:default","test:ioredis":"REDIS_CLIENT=ioredis npm run test:default","test:sharded":"SHARDED=1 npm run test:default","format:check":"prettier --parser typescript --check 'lib/**/*.ts' 'test/**/*.ts'","format:fix":"prettier --parser typescript --write 'lib/**/*.ts' 'test/**/*.ts'","prepack":"tsc"},"dependencies":{"debug":"~4.3.1","notepack.io":"~3.0.1","uid2":"1.0.0"},"peerDependencies":{"socket.io-adapter":"^2.4.0"},"devDependencies":{"@types/expect.js":"^0.3.29","@types/mocha":"^8.2.1","@types/node":"^14.14.7","expect.js":"0.3.1","ioredis":"^4.0.0","mocha":"^10.1.0","nyc":"^15.1.0","prettier":"^2.8.7","redis":"^4.6.6","redis-v3":"npm:redis@^3.1.2","socket.io":"^4.6.1","socket.io-client":"^4.1.1","ts-node":"^10.9.1","typescript":"^4.9.5"},"engines":{"node":">=10.0.0"},"gitHead":"58f08f4b4870d12c7f89045cf4c45e5f7e827ce4","bugs":{"url":"https://github.com/socketio/socket.io-redis-adapter/issues"},"homepage":"https://github.com/socketio/socket.io-redis-adapter#readme","_id":"@socket.io/redis-adapter@8.2.0","_nodeVersion":"16.15.1","_npmVersion":"8.11.0","dist":{"integrity":"sha512-0P/wf0Jfz2vat86bGIUIqmiooWG5AuGOxd0jSsszvolrEuD20hn5gjh2XNnIKpRA/bEy8XyFYrziCBY6BRCB7A==","shasum":"ad6d62c39058546c37a578b0fd443417fbc7d26a","tarball":"https://registry.npmjs.org/@socket.io/redis-adapter/-/redis-adapter-8.2.0.tgz","fileCount":13,"unpackedSize":78973,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIDJP9V2XTlRsUpsXvdOMqH2y1fWFkNpw7+i/pOF0jgV2AiEA4rL0JUOaE3s8PkBci/0JEFpfbDMdoPfju4gpXvs3n/I="}]},"_npmUser":{"name":"darrachequesne","email":"damien.arrachequesne@gmail.com"},"directories":{},"maintainers":[{"name":"darrachequesne","email":"damien.arrachequesne@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/redis-adapter_8.2.0_1683038917956_0.0033031295087320167"},"_hasShrinkwrap":false},"8.2.1":{"name":"@socket.io/redis-adapter","version":"8.2.1","description":"The Socket.IO Redis adapter, allowing to broadcast events between several Socket.IO servers","license":"MIT","repository":{"type":"git","url":"git+ssh://git@github.com/socketio/socket.io-redis-adapter.git"},"main":"./dist/index.js","types":"./dist/index.d.ts","scripts":{"test":"npm run format:check && tsc && nyc mocha --bail --require ts-node/register test/test-runner.ts","format:check":"prettier --parser typescript --check 'lib/**/*.ts' 'test/**/*.ts'","format:fix":"prettier --parser typescript --write 'lib/**/*.ts' 'test/**/*.ts'","prepack":"tsc"},"dependencies":{"debug":"~4.3.1","notepack.io":"~3.0.1","uid2":"1.0.0"},"peerDependencies":{"socket.io-adapter":"^2.4.0"},"devDependencies":{"@types/expect.js":"^0.3.29","@types/mocha":"^8.2.1","@types/node":"^14.14.7","expect.js":"0.3.1","ioredis":"^5.3.2","mocha":"^10.1.0","nyc":"^15.1.0","prettier":"^2.8.7","redis":"^4.6.6","redis-v3":"npm:redis@^3.1.2","socket.io":"^4.6.1","socket.io-client":"^4.1.1","ts-node":"^10.9.1","typescript":"^4.9.5"},"engines":{"node":">=10.0.0"},"gitHead":"623593dfe0d82fa6b1b1fbf9db932990d9b84b57","bugs":{"url":"https://github.com/socketio/socket.io-redis-adapter/issues"},"homepage":"https://github.com/socketio/socket.io-redis-adapter#readme","_id":"@socket.io/redis-adapter@8.2.1","_nodeVersion":"16.15.1","_npmVersion":"8.11.0","dist":{"integrity":"sha512-6Dt7EZgGSBP0qvXeOKGx7NnSr2tPMbVDfDyL97zerZo+v69hMfL99skMCL3RKZlWVqLyRme2T0wcy3udHhtOsg==","shasum":"36f75afc518d0e1fa4fa7c29e6d042f53ee7563b","tarball":"https://registry.npmjs.org/@socket.io/redis-adapter/-/redis-adapter-8.2.1.tgz","fileCount":11,"unpackedSize":79227,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDMW+m0WFZq+M10eUnI1jMdWeHnPJGXVINHfjwCzW6WWAIgINmAgfdDQdXcLkCmjqGaAzAIfeptWyt32Vg/QfV46Zg="}]},"_npmUser":{"name":"darrachequesne","email":"damien.arrachequesne@gmail.com"},"directories":{},"maintainers":[{"name":"darrachequesne","email":"damien.arrachequesne@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/redis-adapter_8.2.1_1684099231967_0.9265131159459632"},"_hasShrinkwrap":false},"8.3.0":{"name":"@socket.io/redis-adapter","version":"8.3.0","description":"The Socket.IO Redis adapter, allowing to broadcast events between several Socket.IO servers","license":"MIT","repository":{"type":"git","url":"git+ssh://git@github.com/socketio/socket.io-redis-adapter.git"},"main":"./dist/index.js","types":"./dist/index.d.ts","scripts":{"compile":"rimraf ./dist && tsc","test":"npm run format:check && tsc && nyc mocha --bail --require ts-node/register test/test-runner.ts","format:check":"prettier --parser typescript --check 'lib/**/*.ts' 'test/**/*.ts'","format:fix":"prettier --parser typescript --write 'lib/**/*.ts' 'test/**/*.ts'","prepack":"npm run compile"},"dependencies":{"debug":"~4.3.1","notepack.io":"~3.0.1","uid2":"1.0.0"},"peerDependencies":{"socket.io-adapter":"^2.5.4"},"devDependencies":{"@types/expect.js":"^0.3.29","@types/mocha":"^8.2.1","@types/node":"^14.14.7","expect.js":"0.3.1","ioredis":"^5.3.2","mocha":"^10.1.0","nyc":"^15.1.0","prettier":"^2.8.7","redis":"^4.6.6","redis-v3":"npm:redis@^3.1.2","rimraf":"^5.0.5","socket.io":"^4.6.1","socket.io-client":"^4.1.1","ts-node":"^10.9.1","typescript":"^4.9.5"},"engines":{"node":">=10.0.0"},"gitHead":"5e82a3bff601f0d59f0ef3e80e338a0471115571","bugs":{"url":"https://github.com/socketio/socket.io-redis-adapter/issues"},"homepage":"https://github.com/socketio/socket.io-redis-adapter#readme","_id":"@socket.io/redis-adapter@8.3.0","_nodeVersion":"20.3.0","_npmVersion":"9.6.7","dist":{"integrity":"sha512-ly0cra+48hDmChxmIpnESKrc94LjRL80TEmZVscuQ/WWkRP81nNj8W8cCGMqbI4L6NCuAaPRSzZF1a9GlAxxnA==","shasum":"bdce1e8f34c07df4a8baf98170bf24dc84eaed4a","tarball":"https://registry.npmjs.org/@socket.io/redis-adapter/-/redis-adapter-8.3.0.tgz","fileCount":9,"unpackedSize":54091,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDfwzwnpSfmMmbdco0yPa0plBh7LVB9lTXFQwOZsCTA5wIhAPm6i9XmxyaU7nr8LXQqNq/si1/D5DgUWduuL5OYuqfP"}]},"_npmUser":{"name":"darrachequesne","email":"damien.arrachequesne@gmail.com"},"directories":{},"maintainers":[{"name":"darrachequesne","email":"damien.arrachequesne@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/redis-adapter_8.3.0_1710340746243_0.010851350952008065"},"_hasShrinkwrap":false}},"time":{"created":"2021-05-11T22:41:14.885Z","7.0.0":"2021-05-11T22:41:15.095Z","modified":"2024-03-13T14:39:06.833Z","7.0.1":"2021-11-15T07:24:49.145Z","7.1.0":"2021-11-29T23:41:00.404Z","7.2.0":"2022-05-03T15:45:58.389Z","8.0.0":"2022-12-07T09:17:21.099Z","8.0.1":"2023-01-11T21:19:01.342Z","8.1.0":"2023-02-08T08:06:46.555Z","8.2.0":"2023-05-02T14:48:38.131Z","8.2.1":"2023-05-14T21:20:32.135Z","8.3.0":"2024-03-13T14:39:06.393Z"},"maintainers":[{"name":"darrachequesne","email":"damien.arrachequesne@gmail.com"}],"description":"The Socket.IO Redis adapter, allowing to broadcast events between several Socket.IO servers","homepage":"https://github.com/socketio/socket.io-redis-adapter#readme","repository":{"type":"git","url":"git+ssh://git@github.com/socketio/socket.io-redis-adapter.git"},"bugs":{"url":"https://github.com/socketio/socket.io-redis-adapter/issues"},"license":"MIT","readme":"# Socket.IO Redis adapter\n\nThe `@socket.io/redis-adapter` package allows broadcasting packets between multiple Socket.IO servers.\n\n<picture>\n  <source media=\"(prefers-color-scheme: dark)\" srcset=\"./assets/adapter_dark.png\">\n  <img alt=\"Diagram of Socket.IO packets forwarded through Redis\" src=\"./assets/adapter.png\">\n</picture>\n\n**Table of contents**\n\n- [Supported features](#supported-features)\n- [Installation](#installation)\n- [Compatibility table](#compatibility-table)\n- [Usage](#usage)\n  - [With the `redis` package](#with-the-redis-package)\n  - [With the `redis` package and a Redis cluster](#with-the-redis-package-and-a-redis-cluster)\n  - [With the `ioredis` package](#with-the-ioredis-package)\n  - [With the `ioredis` package and a Redis cluster](#with-the-ioredis-package-and-a-redis-cluster)\n  - [With Redis sharded Pub/Sub](#with-redis-sharded-pubsub)\n- [Options](#options)\n  - [Default adapter](#default-adapter)\n  - [Sharded adapter](#sharded-adapter)\n- [License](#license)\n\n## Supported features\n\n| Feature                         | `socket.io` version | Support                                        |\n|---------------------------------|---------------------|------------------------------------------------|\n| Socket management               | `4.0.0`             | :white_check_mark: YES (since version `6.1.0`) |\n| Inter-server communication      | `4.1.0`             | :white_check_mark: YES (since version `7.0.0`) |\n| Broadcast with acknowledgements | `4.5.0`             | :white_check_mark: YES (since version `7.2.0`) |\n| Connection state recovery       | `4.6.0`             | :x: NO                                         |\n\n## Installation\n\n```\nnpm install @socket.io/redis-adapter\n```\n\n## Compatibility table\n\n| Redis Adapter version | Socket.IO server version |\n|-----------------------|--------------------------|\n| 4.x                   | 1.x                      |\n| 5.x                   | 2.x                      |\n| 6.0.x                 | 3.x                      |\n| 6.1.x                 | 4.x                      |\n| 7.x and above         | 4.3.1 and above          |\n\n## Usage\n\n### With the `redis` package\n\n```js\nimport { createClient } from \"redis\";\nimport { Server } from \"socket.io\";\nimport { createAdapter } from \"@socket.io/redis-adapter\";\n\nconst pubClient = createClient({ url: \"redis://localhost:6379\" });\nconst subClient = pubClient.duplicate();\n\nawait Promise.all([\n  pubClient.connect(),\n  subClient.connect()\n]);\n\nconst io = new Server({\n  adapter: createAdapter(pubClient, subClient)\n});\n\nio.listen(3000);\n```\n\n### With the `redis` package and a Redis cluster\n\n```js\nimport { createCluster } from \"redis\";\nimport { Server } from \"socket.io\";\nimport { createAdapter } from \"@socket.io/redis-adapter\";\n\nconst pubClient = createCluster({\n  rootNodes: [\n    {\n      url: \"redis://localhost:7000\",\n    },\n    {\n      url: \"redis://localhost:7001\",\n    },\n    {\n      url: \"redis://localhost:7002\",\n    },\n  ],\n});\nconst subClient = pubClient.duplicate();\n\nawait Promise.all([\n  pubClient.connect(),\n  subClient.connect()\n]);\n\nconst io = new Server({\n  adapter: createAdapter(pubClient, subClient)\n});\n\nio.listen(3000);\n```\n\n### With the `ioredis` package\n\n```js\nimport { Redis } from \"ioredis\";\nimport { Server } from \"socket.io\";\nimport { createAdapter } from \"@socket.io/redis-adapter\";\n\nconst pubClient = new Redis();\nconst subClient = pubClient.duplicate();\n\nconst io = new Server({\n  adapter: createAdapter(pubClient, subClient)\n});\n\nio.listen(3000);\n```\n\n### With the `ioredis` package and a Redis cluster\n\n```js\nimport { Cluster } from \"ioredis\";\nimport { Server } from \"socket.io\";\nimport { createAdapter } from \"@socket.io/redis-adapter\";\n\nconst pubClient = new Cluster([\n  {\n    host: \"localhost\",\n    port: 7000,\n  },\n  {\n    host: \"localhost\",\n    port: 7001,\n  },\n  {\n    host: \"localhost\",\n    port: 7002,\n  },\n]);\nconst subClient = pubClient.duplicate();\n\nconst io = new Server({\n  adapter: createAdapter(pubClient, subClient)\n});\n\nio.listen(3000);\n```\n\n### With Redis sharded Pub/Sub\n\nSharded Pub/Sub was introduced in Redis 7.0 in order to help scaling the usage of Pub/Sub in cluster mode.\n\nReference: https://redis.io/docs/interact/pubsub/#sharded-pubsub\n\nA dedicated adapter can be created with the `createShardedAdapter()` method:\n\n```js\nimport { Server } from \"socket.io\";\nimport { createClient } from \"redis\";\nimport { createShardedAdapter } from \"@socket.io/redis-adapter\";\n\nconst pubClient = createClient({ host: \"localhost\", port: 6379 });\nconst subClient = pubClient.duplicate();\n\nawait Promise.all([\n  pubClient.connect(),\n  subClient.connect()\n]);\n\nconst io = new Server({\n  adapter: createShardedAdapter(pubClient, subClient)\n});\n\nio.listen(3000);\n```\n\nMinimum requirements:\n\n- Redis 7.0\n- [`redis@4.6.0`](https://github.com/redis/node-redis/commit/3b1bad229674b421b2bc6424155b20d4d3e45bd1)\n\nNote: it is not currently possible to use the sharded adapter with the `ioredis` package and a Redis cluster ([reference](https://github.com/luin/ioredis/issues/1759)).\n\n## Options\n\n### Default adapter\n\n| Name                               | Description                                                                   | Default value |\n|------------------------------------|-------------------------------------------------------------------------------|---------------|\n| `key`                              | The prefix for the Redis Pub/Sub channels.                                    | `socket.io`   |\n| `requestsTimeout`                  | After this timeout the adapter will stop waiting from responses to request.   | `5_000`       |\n| `publishOnSpecificResponseChannel` | Whether to publish a response to the channel specific to the requesting node. | `false`       |\n| `parser`                           | The parser to use for encoding and decoding messages sent to Redis.           | `-`           |\n\n### Sharded adapter\n\n| Name               | Description                                                                             | Default value |\n|--------------------|-----------------------------------------------------------------------------------------|---------------|\n| `channelPrefix`    | The prefix for the Redis Pub/Sub channels.                                              | `socket.io`   |\n| `subscriptionMode` | The subscription mode impacts the number of Redis Pub/Sub channels used by the adapter. | `dynamic`     |\n\n## License\n\n[MIT](LICENSE)\n","readmeFilename":"README.md"}