{"_id":"ws-stream-tunnel","_rev":"43-8652c81802acf8d97998371892b63531","name":"ws-stream-tunnel","description":"use websocket as a data tunnel","dist-tags":{"latest":"0.4.29"},"versions":{"1.0.0":{"name":"ws-stream-tunnel","version":"1.0.0","description":"use websocket as a data tunnel","main":"index.js","scripts":{"test":"echo \"Error: no test specified\" && exit 1","start":"node index.js"},"keywords":["websocket","tcp","udp"],"author":{"name":"luojia@luojia.me"},"license":"MIT","dependencies":{"ws":"^3.3.1"},"gitHead":"6e78bf0b11ea2e5fc445e87a043ada67d77e8686","_id":"ws-stream-tunnel@1.0.0","_npmVersion":"5.5.1","_nodeVersion":"9.1.0","_npmUser":{"name":"luojia","email":"luojia@luojia.me"},"dist":{"integrity":"sha512-S70sLIvP4UWFJgwUDikgEe0zLjtCL4Hr49+92ZPUSNF3VQ8Y0RQwQDw7ffMYn34pwbzu3DYy2+IOINx85sDKGw==","shasum":"84ec1265b75ee0507f3ecfed263104cd65203ddb","tarball":"https://registry.npmjs.org/ws-stream-tunnel/-/ws-stream-tunnel-1.0.0.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIBoBAm92iwTkDUiqiMqxUKcCRIT6GQnNPRvxO95SU3VuAiEAjFoPYqCPA/E85hZFRmuK7lDXd9D0yBRSackLpJpnaVU="}]},"maintainers":[{"name":"luojia","email":"luojia@luojia.me"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/ws-stream-tunnel-1.0.0.tgz_1511108672935_0.1965622145216912"},"directories":{}},"0.0.1":{"name":"ws-stream-tunnel","version":"0.0.1","description":"use websocket as a data tunnel","main":"index.js","scripts":{"test":"echo \"Error: no test specified\" && exit 1","start":"node index.js"},"keywords":["websocket","tcp","udp"],"author":{"name":"luojia@luojia.me"},"license":"MIT","dependencies":{"ws":"^3.3.1"},"gitHead":"774ffcfd831aef9a7d4373d5eb39d23f3a2b08f9","_id":"ws-stream-tunnel@0.0.1","_npmVersion":"5.5.1","_nodeVersion":"9.1.0","_npmUser":{"name":"luojia","email":"luojia@luojia.me"},"dist":{"integrity":"sha512-Su6ahrjCCy9TfMaj0QA5Fz2E/kCaH53VdHMDlwd5LxRERZS2zw+W+1CY5RY6xKqWqcM+Nki5cAH1s/us3td09Q==","shasum":"7f52c4e71f6206b235d3eb850176deaa3b32eedc","tarball":"https://registry.npmjs.org/ws-stream-tunnel/-/ws-stream-tunnel-0.0.1.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIHL3jIQddzQsNQmRjlRTkHRnZAOVUHtaARqDJz5GgSS1AiEA3S7NfEY8ZWNkI12gJLh9lifZsS+dvlAARvH51j5SeVk="}]},"maintainers":[{"name":"luojia","email":"luojia@luojia.me"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/ws-stream-tunnel-0.0.1.tgz_1511109004120_0.9131268558558077"},"directories":{}},"0.1.1":{"name":"ws-stream-tunnel","version":"0.1.1","repository":{"type":"git","url":"git+ssh://git@github.com/JiaJiaJiang/ws-stream-tunnel.git"},"description":"use websocket as a data tunnel","main":"index.js","scripts":{"test":"echo \"Error: no test specified\" && exit 1","start":"node index.js"},"keywords":["websocket","tcp","udp"],"author":{"name":"luojia@luojia.me"},"license":"MIT","dependencies":{"ws":"^3.3.1"},"gitHead":"8eabb5b07585a028c2aabe85e12210389a2ec189","bugs":{"url":"https://github.com/JiaJiaJiang/ws-stream-tunnel/issues"},"homepage":"https://github.com/JiaJiaJiang/ws-stream-tunnel#readme","_id":"ws-stream-tunnel@0.1.1","_npmVersion":"5.5.1","_nodeVersion":"9.1.0","_npmUser":{"name":"luojia","email":"luojia@luojia.me"},"dist":{"integrity":"sha512-5yz25DVxuk57HWgHLzbzcqiC6mVW37zRjgL9ffgvy8t1kUTO9hgoSsAtJ67ZDzdweG4MYszXKv/cWRyBYdjTPw==","shasum":"c80c1714575092bfc0fc97010c6002eb4c0adcbd","tarball":"https://registry.npmjs.org/ws-stream-tunnel/-/ws-stream-tunnel-0.1.1.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDkc6tPgBtkLfEGuVlFuN0trtk5EP6z4hNzM0q2Yk7DlgIhAONR4/4LxakR8QhR9wZKArElAMtRakyb1MWXO0XjpH5N"}]},"maintainers":[{"name":"luojia","email":"luojia@luojia.me"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/ws-stream-tunnel-0.1.1.tgz_1511110708269_0.20270285895094275"},"directories":{}},"0.1.2":{"name":"ws-stream-tunnel","version":"0.1.2","repository":{"type":"git","url":"git+ssh://git@github.com/JiaJiaJiang/ws-stream-tunnel.git"},"description":"use websocket as a data tunnel","main":"index.js","scripts":{"test":"echo \"Error: no test specified\" && exit 1","start":"node index.js"},"keywords":["websocket","tcp","udp"],"author":{"name":"luojia@luojia.me"},"license":"MIT","dependencies":{"ws":"^3.3.1"},"gitHead":"f3d75ffbb30c797b8683338a40b1a94f3fbbc57c","bugs":{"url":"https://github.com/JiaJiaJiang/ws-stream-tunnel/issues"},"homepage":"https://github.com/JiaJiaJiang/ws-stream-tunnel#readme","_id":"ws-stream-tunnel@0.1.2","_npmVersion":"5.5.1","_nodeVersion":"9.1.0","_npmUser":{"name":"luojia","email":"luojia@luojia.me"},"dist":{"integrity":"sha512-VuQd1lhrOb+hfhWhsxrafGe6izzdwuCbo1luQ01mcsmMPT1kb9LI6OzNoJvaC1++5VSSMlB+oUthd7UgfyFLyw==","shasum":"4733b433cb552bfb193563c58694296b175a4d6e","tarball":"https://registry.npmjs.org/ws-stream-tunnel/-/ws-stream-tunnel-0.1.2.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIAtSFrLV8i+GYMF0c/M5febbPS6GERqSJAa3zcg8GnSNAiEAzwWbaaLi3RC4qZ9kzwhSrFGnA3fnhL6f8FiE2aZ+RYI="}]},"maintainers":[{"name":"luojia","email":"luojia@luojia.me"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/ws-stream-tunnel-0.1.2.tgz_1511150022373_0.5764774845447391"},"directories":{}},"0.1.3":{"name":"ws-stream-tunnel","version":"0.1.3","repository":{"type":"git","url":"git+ssh://git@github.com/JiaJiaJiang/ws-stream-tunnel.git"},"description":"use websocket as a data tunnel","main":"index.js","scripts":{"test":"echo \"Error: no test specified\" && exit 1","start":"node index.js"},"keywords":["websocket","tcp","udp"],"author":{"name":"luojia@luojia.me"},"license":"MIT","dependencies":{"ws":"^3.3.1"},"gitHead":"ad7b79bb3c583aae8f33b610e7e73bb9f9ef9d3b","bugs":{"url":"https://github.com/JiaJiaJiang/ws-stream-tunnel/issues"},"homepage":"https://github.com/JiaJiaJiang/ws-stream-tunnel#readme","_id":"ws-stream-tunnel@0.1.3","_npmVersion":"5.5.1","_nodeVersion":"9.1.0","_npmUser":{"name":"luojia","email":"luojia@luojia.me"},"dist":{"integrity":"sha512-LW4Ugxa0UHY9C333qwps7nal0gN1umua1RmE5po2wNVHH3QjwT4obUwmQttecwqPnBlnMJQJJKB19tCqhg6Irw==","shasum":"031fb59f1fdc117c79857a1045f2921a621004c0","tarball":"https://registry.npmjs.org/ws-stream-tunnel/-/ws-stream-tunnel-0.1.3.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDpan04Fd6ESwgCyn3Rvy7dgy5jU1TJthcMI0dbl5VXoAIgSmKTHOeyM0MmVHt6KQ6NKNH285+GJEpg3V1qy7ozAmo="}]},"maintainers":[{"name":"luojia","email":"luojia@luojia.me"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/ws-stream-tunnel-0.1.3.tgz_1511350967341_0.8986831419169903"},"directories":{}},"0.1.4":{"name":"ws-stream-tunnel","version":"0.1.4","repository":{"type":"git","url":"git+ssh://git@github.com/JiaJiaJiang/ws-stream-tunnel.git"},"description":"use websocket as a data tunnel","main":"index.js","scripts":{"test":"echo \"Error: no test specified\" && exit 1","start":"node index.js"},"keywords":["websocket","tcp","udp"],"author":{"name":"luojia@luojia.me"},"license":"MIT","dependencies":{"ws":"^3.3.1"},"gitHead":"33fbe616c0c38cd6df28c32389942607ea13b293","bugs":{"url":"https://github.com/JiaJiaJiang/ws-stream-tunnel/issues"},"homepage":"https://github.com/JiaJiaJiang/ws-stream-tunnel#readme","_id":"ws-stream-tunnel@0.1.4","_npmVersion":"5.5.1","_nodeVersion":"9.1.0","_npmUser":{"name":"luojia","email":"luojia@luojia.me"},"dist":{"integrity":"sha512-N4FJdNmrHsVgbo/vimsd6ZYi6H3ydCV3BP4prnAKmSDBQ8kRKWNPZNcsQ90orzEB36T8oTUrDCD8bZnnLg6fUA==","shasum":"fa6b328207842dac4399ba4f0bd381d18e9a811a","tarball":"https://registry.npmjs.org/ws-stream-tunnel/-/ws-stream-tunnel-0.1.4.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQC5VGUvCaDPxC2v3FYcKPWXuh+DtucNpNpxu6cl3F/HpwIhAL3IfbPT4QnzaQ7A+gViAoyfPTugT7CDlo32pkVmRY2W"}]},"maintainers":[{"name":"luojia","email":"luojia@luojia.me"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/ws-stream-tunnel-0.1.4.tgz_1511634672547_0.49042177852243185"},"directories":{}},"0.1.5":{"name":"ws-stream-tunnel","version":"0.1.5","repository":{"type":"git","url":"git+ssh://git@github.com/JiaJiaJiang/ws-stream-tunnel.git"},"description":"use websocket as a data tunnel","main":"index.js","scripts":{"test":"echo \"Error: no test specified\" && exit 1","start":"node index.js"},"keywords":["websocket","tcp","udp"],"author":{"name":"luojia@luojia.me"},"license":"MIT","dependencies":{"ws":"^3.3.1"},"gitHead":"a2f2b67a541f64445de1c52a56d082a5ebec4479","bugs":{"url":"https://github.com/JiaJiaJiang/ws-stream-tunnel/issues"},"homepage":"https://github.com/JiaJiaJiang/ws-stream-tunnel#readme","_id":"ws-stream-tunnel@0.1.5","_npmVersion":"5.5.1","_nodeVersion":"9.1.0","_npmUser":{"name":"luojia","email":"luojia@luojia.me"},"dist":{"integrity":"sha512-9dehH0ZEcISA38J+K8plw0gRskQZljcyWIqqPJnwueT+xS4KR+l5ws9RrOBKpCkWYeBaqnDP3lCX2cmC/pT3Ng==","shasum":"660c30ab2ecf6976441beb00d0530e9fec1ddb2f","tarball":"https://registry.npmjs.org/ws-stream-tunnel/-/ws-stream-tunnel-0.1.5.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCKuODaoN8J3iehZtVcP0NISD5/Hs2qamhXNtiFYhemFQIgIyCxM3C+BvQAOfCzwgA5Ql5XrzZtlKJcJLt1ZIXaqQc="}]},"maintainers":[{"name":"luojia","email":"luojia@luojia.me"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/ws-stream-tunnel-0.1.5.tgz_1511637908253_0.23889859253540635"},"directories":{}},"0.1.6":{"name":"ws-stream-tunnel","version":"0.1.6","repository":{"type":"git","url":"git+ssh://git@github.com/JiaJiaJiang/ws-stream-tunnel.git"},"description":"use websocket as a data tunnel","main":"index.js","scripts":{"test":"echo \"Error: no test specified\" && exit 1","start":"node index.js"},"keywords":["websocket","tcp","udp"],"author":{"name":"luojia@luojia.me"},"license":"MIT","dependencies":{"ws":"^3.3.1"},"gitHead":"a9ad693d839ad9a5a9d46e2a22fc80481b56d988","bugs":{"url":"https://github.com/JiaJiaJiang/ws-stream-tunnel/issues"},"homepage":"https://github.com/JiaJiaJiang/ws-stream-tunnel#readme","_id":"ws-stream-tunnel@0.1.6","_npmVersion":"5.5.1","_nodeVersion":"9.1.0","_npmUser":{"name":"luojia","email":"luojia@luojia.me"},"dist":{"integrity":"sha512-WDOdMh0tu1GM7zabSKBlL6zMEjqLLBNwOF9wbO0A70FrxtFldihdBD2w41+r3RefKVjQTQP20GXmoM3hhvsaEg==","shasum":"fe7f86bc5d0c267ae08ff6bf182f36285853598b","tarball":"https://registry.npmjs.org/ws-stream-tunnel/-/ws-stream-tunnel-0.1.6.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIEybLKyd9nSYxlF1gar1bRDIr8qyD9EcCEKLZ+tGV5n/AiBDvaiOOdbGMXqx0EdlftjLWO1g2EH+nmPJzJztpjCcOw=="}]},"maintainers":[{"name":"luojia","email":"luojia@luojia.me"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/ws-stream-tunnel-0.1.6.tgz_1512057340009_0.15532403159886599"},"directories":{}},"0.1.7":{"name":"ws-stream-tunnel","version":"0.1.7","repository":{"type":"git","url":"git+ssh://git@github.com/JiaJiaJiang/ws-stream-tunnel.git"},"description":"use websocket as a data tunnel","main":"index.js","scripts":{"test":"echo \"Error: no test specified\" && exit 1","start":"node index.js"},"keywords":["websocket","tcp","udp"],"author":{"name":"luojia@luojia.me"},"license":"MIT","dependencies":{"ws":"^3.3.1"},"gitHead":"5410bd5a2109eb649bfd0f7c9a0ab82365a16b61","bugs":{"url":"https://github.com/JiaJiaJiang/ws-stream-tunnel/issues"},"homepage":"https://github.com/JiaJiaJiang/ws-stream-tunnel#readme","_id":"ws-stream-tunnel@0.1.7","_npmVersion":"5.5.1","_nodeVersion":"9.1.0","_npmUser":{"name":"luojia","email":"luojia@luojia.me"},"dist":{"integrity":"sha512-fQ1qxJi91DTchYXDdyIvcmu/Qx5IkpDqfUEb0OyelfHW3hqe6cO5K1pBCmMOc1GvzeYIhpXb+tU5SxvJ2V6/PQ==","shasum":"8721fb2857a3982c74f999dd326ca3b84469478d","tarball":"https://registry.npmjs.org/ws-stream-tunnel/-/ws-stream-tunnel-0.1.7.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCICRtE2WibhEfvbya36SXHLdkb/jL30uJFvubo55VzVpvAiBkLkzKWwwCTQhxwvYYvg/9lHZdhAZFxw8nMOWG6QMfuQ=="}]},"maintainers":[{"name":"luojia","email":"luojia@luojia.me"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/ws-stream-tunnel-0.1.7.tgz_1512093218305_0.4851927850395441"},"directories":{}},"0.2.0":{"name":"ws-stream-tunnel","version":"0.2.0","repository":{"type":"git","url":"git+ssh://git@github.com/JiaJiaJiang/ws-stream-tunnel.git"},"description":"use websocket as a data tunnel","main":"index.js","scripts":{"test":"echo \"Error: no test specified\" && exit 1","start":"node index.js"},"keywords":["websocket","tcp","udp"],"author":{"name":"luojia@luojia.me"},"license":"MIT","dependencies":{"ws":"^3.3.1"},"gitHead":"c43e53b1bdc1883ecdfa72256b1facaf08b4af02","bugs":{"url":"https://github.com/JiaJiaJiang/ws-stream-tunnel/issues"},"homepage":"https://github.com/JiaJiaJiang/ws-stream-tunnel#readme","_id":"ws-stream-tunnel@0.2.0","_npmVersion":"5.5.1","_nodeVersion":"9.1.0","_npmUser":{"name":"luojia","email":"luojia@luojia.me"},"dist":{"integrity":"sha512-1uOOLOCpkW02QkvIoDmoSoFInTHS0rcMBW+Cs+0ruVRBInSlN2Jq3eVexkDkLr51ArSBz6NFxDwLlouLbsh4Ew==","shasum":"bcffefe3b4dc6d4fd556335c2dff7f21cf023da0","tarball":"https://registry.npmjs.org/ws-stream-tunnel/-/ws-stream-tunnel-0.2.0.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDCcOwDW0Vj3hrYF3c8RKKzd354gUeEEMfId9/p9wbxggIgLf+zN4rH1HzuO74tSRhPKyX4dAr5mwWtAh0Rw/XzGJE="}]},"maintainers":[{"name":"luojia","email":"luojia@luojia.me"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/ws-stream-tunnel-0.2.0.tgz_1512237896953_0.5324593165423721"},"directories":{}},"0.3.0":{"name":"ws-stream-tunnel","version":"0.3.0","repository":{"type":"git","url":"git+ssh://git@github.com/JiaJiaJiang/ws-stream-tunnel.git"},"description":"use websocket as a data tunnel","main":"index.js","scripts":{"test":"echo \"Error: no test specified\" && exit 1","start":"node index.js"},"keywords":["websocket","tcp","udp"],"author":{"name":"luojia@luojia.me"},"license":"MIT","dependencies":{"ws":"^3.3.1"},"gitHead":"2e0a68d2033fc6ee21c97ef2d2b96afa455c2336","bugs":{"url":"https://github.com/JiaJiaJiang/ws-stream-tunnel/issues"},"homepage":"https://github.com/JiaJiaJiang/ws-stream-tunnel#readme","_id":"ws-stream-tunnel@0.3.0","_npmVersion":"5.5.1","_nodeVersion":"9.1.0","_npmUser":{"name":"luojia","email":"luojia@luojia.me"},"dist":{"integrity":"sha512-Vv2tlqK2mISpQbQB0S2ogt3Qj8419XODuWRcImrJucHZPSDWomq1nkdUwJCJUaf1Z3jD+tpotaiKFR0nsTDDAQ==","shasum":"15e3912848ff9d35dff7316fbf9be4e56489a3d9","tarball":"https://registry.npmjs.org/ws-stream-tunnel/-/ws-stream-tunnel-0.3.0.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIBF0EbVAub245z9hQNXN6mulnBjOlmadGvImHnFbOvbyAiEAgFPrtpK2GwYgaVXZc7dxBsUEcSU/KqXPRNnyelkq0m4="}]},"maintainers":[{"name":"luojia","email":"luojia@luojia.me"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/ws-stream-tunnel-0.3.0.tgz_1512659973728_0.3901127018034458"},"directories":{}},"0.3.1":{"name":"ws-stream-tunnel","version":"0.3.1","repository":{"type":"git","url":"git+ssh://git@github.com/JiaJiaJiang/ws-stream-tunnel.git"},"description":"use websocket as a data tunnel","main":"index.js","scripts":{"test":"echo \"Error: no test specified\" && exit 1","start":"node index.js"},"keywords":["websocket","tcp","udp"],"author":{"name":"luojia@luojia.me"},"license":"MIT","dependencies":{"ws":"^3.3.1"},"gitHead":"2c02607b6e625510966ab606323f5a45c5d66088","bugs":{"url":"https://github.com/JiaJiaJiang/ws-stream-tunnel/issues"},"homepage":"https://github.com/JiaJiaJiang/ws-stream-tunnel#readme","_id":"ws-stream-tunnel@0.3.1","_npmVersion":"5.5.1","_nodeVersion":"9.1.0","_npmUser":{"name":"luojia","email":"luojia@luojia.me"},"dist":{"integrity":"sha512-DZ2wy3Qhsas8tx3T4MOUnMQ+JVAJgtkkw/AEYMeIXQHKxYdYrUZvkzzWErGfZ3SS5Mi0bdcEKNWw3Iwo6Y4NCQ==","shasum":"728f7bed289f57279e0ae23382f8b925698b2ba3","tarball":"https://registry.npmjs.org/ws-stream-tunnel/-/ws-stream-tunnel-0.3.1.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCID74rPsl3tE9G9CoIKkhzeMWXoa4uXDkgpegHISBPTIeAiEAnWwf1ko+roaCHnIddFNj445lXK5mlpuucW3ih++l924="}]},"maintainers":[{"name":"luojia","email":"luojia@luojia.me"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/ws-stream-tunnel-0.3.1.tgz_1512662910905_0.5156933348625898"},"directories":{}},"0.4.0":{"name":"ws-stream-tunnel","version":"0.4.0","repository":{"type":"git","url":"git+ssh://git@github.com/JiaJiaJiang/ws-stream-tunnel.git"},"description":"use websocket as a data tunnel","main":"index.js","scripts":{"test":"echo \"Error: no test specified\" && exit 1","start":"node index.js"},"keywords":["websocket","tcp","udp"],"author":{"name":"luojia@luojia.me"},"license":"MIT","dependencies":{"ws":"^3.3.1"},"gitHead":"3c2037dc7be965d4dd020de203cc94e112780c8d","bugs":{"url":"https://github.com/JiaJiaJiang/ws-stream-tunnel/issues"},"homepage":"https://github.com/JiaJiaJiang/ws-stream-tunnel#readme","_id":"ws-stream-tunnel@0.4.0","_npmVersion":"5.5.1","_nodeVersion":"9.1.0","_npmUser":{"name":"luojia","email":"luojia@luojia.me"},"dist":{"integrity":"sha512-XLYf2XMidwCnb2yfwr083jLsjLvsK7EMGU2pqQbRVOHvyWWRMeLV2j6ra94LdeS/mJ2jjgbNJC/7k6ClUuMVkQ==","shasum":"55fd53c0f17787fbb20bbfac14ba2e747121c26b","tarball":"https://registry.npmjs.org/ws-stream-tunnel/-/ws-stream-tunnel-0.4.0.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCAq23E9H4ottOWHqMexNyqjgQBVmPB0UmZpd2cE+dK0gIgd86otWPy9V/oJ83OYHJPZQ66zS+b/VYIwXdKrfUWnsw="}]},"maintainers":[{"name":"luojia","email":"luojia@luojia.me"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/ws-stream-tunnel-0.4.0.tgz_1512810873650_0.5052228241693228"},"directories":{}},"0.4.1":{"name":"ws-stream-tunnel","version":"0.4.1","repository":{"type":"git","url":"git+ssh://git@github.com/JiaJiaJiang/ws-stream-tunnel.git"},"description":"use websocket as a data tunnel","main":"index.js","scripts":{"test":"echo \"Error: no test specified\" && exit 1","start":"node index.js"},"keywords":["websocket","tcp","udp"],"author":{"name":"luojia@luojia.me"},"license":"MIT","dependencies":{"ws":"^3.3.1"},"gitHead":"eadbf33be6db5569fa4d2971191be6eb8e373e6a","bugs":{"url":"https://github.com/JiaJiaJiang/ws-stream-tunnel/issues"},"homepage":"https://github.com/JiaJiaJiang/ws-stream-tunnel#readme","_id":"ws-stream-tunnel@0.4.1","_npmVersion":"5.6.0","_nodeVersion":"9.1.0","_npmUser":{"name":"luojia","email":"luojia@luojia.me"},"dist":{"integrity":"sha512-7VLu5Z96PeCs0Hdk+iHOroIMtOD34j877g3FrvSsVRXfld0liehZRIKZD8WIA3bJNsU73YbETinvfLK5b0nk7w==","shasum":"b9508a0c981efcf1fc5f6ebb3c6ce9f2a145b9cb","tarball":"https://registry.npmjs.org/ws-stream-tunnel/-/ws-stream-tunnel-0.4.1.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIHXawVRGVZZWu0et8gdgPapxrEQx+pPDmsn6CRN+M9DQAiAFmiOosEDIH0/2w7tSBwe7RREBNhUBDku5cvi8dQJmBw=="}]},"maintainers":[{"name":"luojia","email":"luojia@luojia.me"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/ws-stream-tunnel-0.4.1.tgz_1512846891561_0.63539176620543"},"directories":{}},"0.4.2":{"name":"ws-stream-tunnel","version":"0.4.2","repository":{"type":"git","url":"git+ssh://git@github.com/JiaJiaJiang/ws-stream-tunnel.git"},"description":"use websocket as a data tunnel","main":"index.js","scripts":{"test":"echo \"Error: no test specified\" && exit 1","start":"node index.js"},"keywords":["websocket","tcp","udp"],"author":{"name":"luojia@luojia.me"},"license":"MIT","dependencies":{"ws":"^3.3.1"},"gitHead":"519e116a4ed3ac23a18a8e01b1b2a04926869606","bugs":{"url":"https://github.com/JiaJiaJiang/ws-stream-tunnel/issues"},"homepage":"https://github.com/JiaJiaJiang/ws-stream-tunnel#readme","_id":"ws-stream-tunnel@0.4.2","_npmVersion":"5.6.0","_nodeVersion":"9.1.0","_npmUser":{"name":"luojia","email":"luojia@luojia.me"},"dist":{"integrity":"sha512-paO6ZojfApEpRsEhI9/9ZUFBSc7pQGXLzxlG8WYfAIKCEnqb+tXgvA7o9oQdiKvrsByrjP7QzG/hTcmld10tqg==","shasum":"793def0a9f401b1317de6476589e823558f4dbab","tarball":"https://registry.npmjs.org/ws-stream-tunnel/-/ws-stream-tunnel-0.4.2.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQC1hXY067ncyYH3qWg4Zl7aVjdwUQfc8PkDNx82gwcaKAIhAJ6cnMMU1YNkrgfKS9HZK4rAfQreGr0wqVE/OD1Th07L"}]},"maintainers":[{"name":"luojia","email":"luojia@luojia.me"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/ws-stream-tunnel-0.4.2.tgz_1512931625152_0.5526966927573085"},"directories":{}},"0.4.3":{"name":"ws-stream-tunnel","version":"0.4.3","repository":{"type":"git","url":"git+ssh://git@github.com/JiaJiaJiang/ws-stream-tunnel.git"},"description":"use websocket as a data tunnel","main":"index.js","scripts":{"test":"echo \"Error: no test specified\" && exit 1","start":"node index.js"},"keywords":["websocket","tcp","udp"],"author":{"name":"luojia@luojia.me"},"license":"MIT","dependencies":{"ws":"^3.3.1"},"gitHead":"4a4f508694afb5adfc5c2820ab6aff943236b23c","bugs":{"url":"https://github.com/JiaJiaJiang/ws-stream-tunnel/issues"},"homepage":"https://github.com/JiaJiaJiang/ws-stream-tunnel#readme","_id":"ws-stream-tunnel@0.4.3","_npmVersion":"5.6.0","_nodeVersion":"9.1.0","_npmUser":{"name":"luojia","email":"luojia@luojia.me"},"dist":{"integrity":"sha512-Iv49y7OdoU/Lt3W3PDc3m1mwcknwVOamjjXI4wdzz3/VcZPqLBNO3jf9nyIxM6NOTz7DaF8Z32dvV+MmDI1VaQ==","shasum":"8afe8d7707ed565e1046478d4ecaee9a13915cb6","tarball":"https://registry.npmjs.org/ws-stream-tunnel/-/ws-stream-tunnel-0.4.3.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIHgIiTBRGQGQGXgd9EuDqDWULPG85liIYLWgNYIIn4exAiBzWL3bhGt+HxkmXr12nmZRzaMscnpOMKU+yUG+FgNdSA=="}]},"maintainers":[{"name":"luojia","email":"luojia@luojia.me"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/ws-stream-tunnel-0.4.3.tgz_1512982345230_0.31520825577899814"},"directories":{}},"0.4.4":{"name":"ws-stream-tunnel","version":"0.4.4","repository":{"type":"git","url":"git+ssh://git@github.com/JiaJiaJiang/ws-stream-tunnel.git"},"description":"use websocket as a data tunnel","main":"index.js","scripts":{"test":"echo \"Error: no test specified\" && exit 1","start":"node index.js"},"keywords":["websocket","tcp","udp"],"author":{"name":"luojia@luojia.me"},"license":"MIT","dependencies":{"ws":"^3.3.1"},"gitHead":"cb4ee1c97a80e6d79d314edfe59aaa004ff8aa42","bugs":{"url":"https://github.com/JiaJiaJiang/ws-stream-tunnel/issues"},"homepage":"https://github.com/JiaJiaJiang/ws-stream-tunnel#readme","_id":"ws-stream-tunnel@0.4.4","_npmVersion":"5.6.0","_nodeVersion":"9.1.0","_npmUser":{"name":"luojia","email":"luojia@luojia.me"},"dist":{"integrity":"sha512-e/8rju6GcaN1mRR+FRkWOsKg1Yjzu+ww8Va1F+5eyXM9cmViKDMNXDnr3Xm+HKP8DKBrrvJay3f07mobZ8boUQ==","shasum":"090ad29e9bfde60e88e6926ab6a07f8f186f19d4","tarball":"https://registry.npmjs.org/ws-stream-tunnel/-/ws-stream-tunnel-0.4.4.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCID+woZ02xT8KI0AjwlTSaa/pajcB1wNuxua7zfKHxpPTAiBX+uXgaIX/kQwwdPF7Fcza/7Dk5D3mioAFAVDg9lBXPA=="}]},"maintainers":[{"name":"luojia","email":"luojia@luojia.me"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/ws-stream-tunnel-0.4.4.tgz_1513943151541_0.9091183736454695"},"directories":{}},"0.4.5":{"name":"ws-stream-tunnel","version":"0.4.5","repository":{"type":"git","url":"git+ssh://git@github.com/JiaJiaJiang/ws-stream-tunnel.git"},"description":"use websocket as a data tunnel","main":"index.js","scripts":{"test":"echo \"Error: no test specified\" && exit 1","start":"node index.js"},"keywords":["websocket","tcp","udp"],"author":{"name":"luojia@luojia.me"},"license":"MIT","dependencies":{"ws":"^3.3.1"},"gitHead":"1478eff6cf79d0921211ed6161ee6573687b6905","bugs":{"url":"https://github.com/JiaJiaJiang/ws-stream-tunnel/issues"},"homepage":"https://github.com/JiaJiaJiang/ws-stream-tunnel#readme","_id":"ws-stream-tunnel@0.4.5","_npmVersion":"5.6.0","_nodeVersion":"9.1.0","_npmUser":{"name":"luojia","email":"luojia@luojia.me"},"dist":{"integrity":"sha512-/gg1ta2A4/MAQq+Zj7vYb8lZO8nwxO+HNpHOuqJmy08a2maLU/9irvtmwnon88Hm0Etbpnrp8z2qxGvs8dglNw==","shasum":"06d6a5bb4423d7b8f7869346a728befa78ef5a54","tarball":"https://registry.npmjs.org/ws-stream-tunnel/-/ws-stream-tunnel-0.4.5.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDSgseN+aaPXQiIHtX+CmHRRqkzm7qlYbfyBoSzXlVJ+AIhALHrsR3ReQ80FFe5exxAgzntPWhOt63nwl9eR2V6KEU3"}]},"maintainers":[{"name":"luojia","email":"luojia@luojia.me"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/ws-stream-tunnel-0.4.5.tgz_1516864895619_0.7864663579966873"},"directories":{}},"0.4.6":{"name":"ws-stream-tunnel","version":"0.4.6","repository":{"type":"git","url":"git+ssh://git@github.com/JiaJiaJiang/ws-stream-tunnel.git"},"description":"use websocket as a data tunnel","main":"index.js","scripts":{"test":"echo \"Error: no test specified\" && exit 1","start":"node index.js"},"keywords":["websocket","tcp","udp"],"author":{"name":"luojia@luojia.me"},"license":"MIT","dependencies":{"ws":"^3.3.1"},"gitHead":"e71b0aca8b0e89c5f7f24cbccba1d227dc7cf0b7","bugs":{"url":"https://github.com/JiaJiaJiang/ws-stream-tunnel/issues"},"homepage":"https://github.com/JiaJiaJiang/ws-stream-tunnel#readme","_id":"ws-stream-tunnel@0.4.6","_npmVersion":"5.6.0","_nodeVersion":"9.1.0","_npmUser":{"name":"luojia","email":"luojia@luojia.me"},"dist":{"integrity":"sha512-xlSQn/o3x6Ht1cgUDDw1VvXmBr6Wt3gp5f0gaUeOFWptjDT/QZetPdFj5HZkeI52MQJpNUI/oHRgokiP7VrmNQ==","shasum":"6c659c13a827e054546d249d29c543dfc8d8280c","tarball":"https://registry.npmjs.org/ws-stream-tunnel/-/ws-stream-tunnel-0.4.6.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIHzicEl5jwF4maPlFIlC/EChrFFpOQa7akXA4tPI6CaoAiAghaCMVGlerXX91j+UMuFNDgyO/oAlxor4lYMqmO1i1A=="}]},"maintainers":[{"name":"luojia","email":"luojia@luojia.me"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/ws-stream-tunnel-0.4.6.tgz_1516903705300_0.8642461108975112"},"directories":{}},"0.4.7":{"name":"ws-stream-tunnel","version":"0.4.7","repository":{"type":"git","url":"git+ssh://git@github.com/JiaJiaJiang/ws-stream-tunnel.git"},"description":"use websocket as a data tunnel","main":"index.js","scripts":{"test":"echo \"Error: no test specified\" && exit 1","start":"node index.js"},"keywords":["websocket","tcp","udp"],"author":{"name":"luojia@luojia.me"},"license":"MIT","dependencies":{"ws":"^3.3.1"},"gitHead":"fd5a2531fca3317248ad6ccfd2124f52ef58b7d6","bugs":{"url":"https://github.com/JiaJiaJiang/ws-stream-tunnel/issues"},"homepage":"https://github.com/JiaJiaJiang/ws-stream-tunnel#readme","_id":"ws-stream-tunnel@0.4.7","_npmVersion":"5.6.0","_nodeVersion":"9.1.0","_npmUser":{"name":"luojia","email":"luojia@luojia.me"},"dist":{"integrity":"sha512-Sx3N3zvDHDqYCuD8hNK85DqpI77WOy3jYRE2c++KfhIKRQSkK4kTBs1PkIytvPjUcys+Yf6P+/SIWsTYa+Rx9w==","shasum":"13bed9413dff7edf545bb0e528df3ab3e786a0db","tarball":"https://registry.npmjs.org/ws-stream-tunnel/-/ws-stream-tunnel-0.4.7.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIBlgBwvlgy7tTvD5msEdQlH453fAlWp3ie+XmsQPd0C4AiEAyJ5o6o9hzQRlm5q7eVmUY4A5RScYDao5wXDTLa4dcZw="}]},"maintainers":[{"name":"luojia","email":"luojia@luojia.me"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/ws-stream-tunnel-0.4.7.tgz_1517073912617_0.5436728789936751"},"directories":{}},"0.4.8":{"name":"ws-stream-tunnel","version":"0.4.8","repository":{"type":"git","url":"git+ssh://git@github.com/JiaJiaJiang/ws-stream-tunnel.git"},"description":"use websocket as a data tunnel","main":"index.js","scripts":{"test":"echo \"Error: no test specified\" && exit 1","start":"node index.js"},"keywords":["websocket","tcp","udp"],"author":{"name":"luojia@luojia.me"},"license":"MIT","dependencies":{"ws":"^3.3.3"},"devDependencies":{"byte-size":"^4.0.2"},"gitHead":"023a181a72f43b267fa889bf440669bb323403d8","bugs":{"url":"https://github.com/JiaJiaJiang/ws-stream-tunnel/issues"},"homepage":"https://github.com/JiaJiaJiang/ws-stream-tunnel#readme","_id":"ws-stream-tunnel@0.4.8","_npmVersion":"5.6.0","_nodeVersion":"9.5.0","_npmUser":{"name":"luojia","email":"luojia@luojia.me"},"dist":{"integrity":"sha512-/143YScoiEDQoL2OI1fWY6a8wjz/Yq7PcuhFm1W2UmsnAXxsRb52MJHQfsUyMXF7UE9WVgc9gtg9+kuDXNEnEQ==","shasum":"30c42e3e420d1818e303a84c8aece9e7e40cfe80","tarball":"https://registry.npmjs.org/ws-stream-tunnel/-/ws-stream-tunnel-0.4.8.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCPXOHWkpAv4HyhtoKa++xbQ1h4H6SRJjAhRlqCnL+HIAIhAMO2NHkdl2SAEiW5rhwC+HW46XcJHJNrLkGKND8y+HoK"}]},"maintainers":[{"name":"luojia","email":"luojia@luojia.me"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/ws-stream-tunnel-0.4.8.tgz_1517600284041_0.8144288484472781"},"directories":{}},"0.4.9":{"name":"ws-stream-tunnel","version":"0.4.9","repository":{"type":"git","url":"git+ssh://git@github.com/JiaJiaJiang/ws-stream-tunnel.git"},"description":"use websocket as a data tunnel","main":"index.js","scripts":{"test":"echo \"Error: no test specified\" && exit 1","start":"node index.js"},"keywords":["websocket","tcp","udp"],"author":{"name":"luojia@luojia.me"},"license":"MIT","dependencies":{"bufferutil":"^3.0.3","ws":"^3.3.3"},"devDependencies":{"byte-size":"^4.0.2"},"gitHead":"06dd049f047340e3c875ee602cacc9c608676d4b","bugs":{"url":"https://github.com/JiaJiaJiang/ws-stream-tunnel/issues"},"homepage":"https://github.com/JiaJiaJiang/ws-stream-tunnel#readme","_id":"ws-stream-tunnel@0.4.9","_npmVersion":"5.6.0","_nodeVersion":"9.5.0","_npmUser":{"name":"luojia","email":"luojia@luojia.me"},"dist":{"integrity":"sha512-GRQ/FntZFPkx6lRr8QVsDPgOA6K1VqP3PUqT+tk89RhNfY7lKEqGgkGWTRSNfcWRbhY8bLIi8DEZlNnHEs85Dw==","shasum":"b971e1bb13a63149afe77bb59ea9c53d3ade6fa7","tarball":"https://registry.npmjs.org/ws-stream-tunnel/-/ws-stream-tunnel-0.4.9.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCBdLdRC0lApvLM2VnXHvMW3v1EWhlqtoFhm2VAgH4pewIgAxYR7svlUj9D2p1J4ALgOjWPSqZUKZ6VDuoPJf5OPYk="}]},"maintainers":[{"name":"luojia","email":"luojia@luojia.me"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/ws-stream-tunnel-0.4.9.tgz_1517631878245_0.35645536868833005"},"directories":{}},"0.4.10":{"name":"ws-stream-tunnel","version":"0.4.10","repository":{"type":"git","url":"git+ssh://git@github.com/JiaJiaJiang/ws-stream-tunnel.git"},"description":"use websocket as a data tunnel","main":"index.js","scripts":{"test":"echo \"Error: no test specified\" && exit 1","start":"node index.js"},"keywords":["websocket","tcp","udp"],"author":{"name":"luojia@luojia.me"},"license":"MIT","dependencies":{"bufferutil":"^3.0.3","utf-8-validate":"^4.0.0","ws":"^3.3.3"},"devDependencies":{"byte-size":"^4.0.2"},"gitHead":"c3e170c3d30fe16c5064cd4c6067479299b232af","bugs":{"url":"https://github.com/JiaJiaJiang/ws-stream-tunnel/issues"},"homepage":"https://github.com/JiaJiaJiang/ws-stream-tunnel#readme","_id":"ws-stream-tunnel@0.4.10","_npmVersion":"5.6.0","_nodeVersion":"9.5.0","_npmUser":{"name":"luojia","email":"luojia@luojia.me"},"dist":{"integrity":"sha512-M5T2PH8MuGji+pF/e6gWVSqfr+AlWiHT+aRiQmx+wK3J1iJsqmuWL4mDbKzo9+iOW6K+suwgbL7Hh4u+CFyyIQ==","shasum":"5fec9ff2fa704612db77b393b35366c9e7ddaf24","tarball":"https://registry.npmjs.org/ws-stream-tunnel/-/ws-stream-tunnel-0.4.10.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDqHgAvM1/Cqtio45zTmQo6JNXWHW795ZDOlb4KXgpoSAIhAP+Hau4cOmg28Sz8D/POso6h6ybZezJQc4zX8vq1NzEw"}]},"maintainers":[{"name":"luojia","email":"luojia@luojia.me"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/ws-stream-tunnel-0.4.10.tgz_1517632213689_0.6220927427057177"},"directories":{}},"0.4.11":{"name":"ws-stream-tunnel","version":"0.4.11","repository":{"type":"git","url":"git+ssh://git@github.com/JiaJiaJiang/ws-stream-tunnel.git"},"description":"use websocket as a data tunnel","main":"index.js","scripts":{"test":"echo \"Error: no test specified\" && exit 1","start":"node index.js"},"keywords":["websocket","tcp","udp"],"author":{"name":"luojia@luojia.me"},"license":"MIT","dependencies":{"bufferutil":"^3.0.3","utf-8-validate":"^4.0.0","ws":"^4.0.0"},"devDependencies":{"byte-size":"^4.0.2"},"gitHead":"762d9f0e7fa70fcebab06fe757e8cc9ab57664cb","bugs":{"url":"https://github.com/JiaJiaJiang/ws-stream-tunnel/issues"},"homepage":"https://github.com/JiaJiaJiang/ws-stream-tunnel#readme","_id":"ws-stream-tunnel@0.4.11","_npmVersion":"5.4.2","_nodeVersion":"8.7.0","_npmUser":{"name":"luojia","email":"luojia@luojia.me"},"dist":{"integrity":"sha512-Xch5W3B80HP7uWhO8q5GIP/QgpyQyXF8wPfA2ZWtUdAmu7avfRl1I2bbU++9PZpdpqwl7QMv5UFbL7td3PquZA==","shasum":"3817e489c91de383d574695bb0c2a74521558c3f","tarball":"https://registry.npmjs.org/ws-stream-tunnel/-/ws-stream-tunnel-0.4.11.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDrfAV/3n4VyU5uq3bCkKPNYAPX7SzD2ocfVAFqqnjHnQIhAO4q16Vxa/QI4idgNfmUI+PtDlX4GhR9CCzMas3Us5Vx"}]},"maintainers":[{"name":"luojia","email":"luojia@luojia.me"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/ws-stream-tunnel-0.4.11.tgz_1517638669416_0.15805344888940454"},"directories":{}},"0.4.12":{"name":"ws-stream-tunnel","version":"0.4.12","repository":{"type":"git","url":"git+ssh://git@github.com/JiaJiaJiang/ws-stream-tunnel.git"},"description":"use websocket as a data tunnel","main":"index.js","scripts":{"test":"echo \"Error: no test specified\" && exit 1","start":"node index.js"},"keywords":["websocket","tcp","udp"],"author":{"name":"luojia@luojia.me"},"license":"MIT","dependencies":{"bufferutil":"^3.0.3","utf-8-validate":"^4.0.0","ws":"^4.0.0"},"devDependencies":{"byte-size":"^4.0.2"},"gitHead":"81e7377434a0779afd5ed8d0a2832d700d0278b7","bugs":{"url":"https://github.com/JiaJiaJiang/ws-stream-tunnel/issues"},"homepage":"https://github.com/JiaJiaJiang/ws-stream-tunnel#readme","_id":"ws-stream-tunnel@0.4.12","_npmVersion":"5.4.2","_nodeVersion":"8.7.0","_npmUser":{"name":"luojia","email":"luojia@luojia.me"},"dist":{"integrity":"sha512-+vh7YsLZfqm3D1nQv5dtImEyxfh0cLgNgGcwEbmiOA4HFgTs6NVyFLk5RXgRZNZuZXmpxuDlgX9UQcfjQ58Fmw==","shasum":"ad00ed443303d3a228cc47777af70a53e277ff2d","tarball":"https://registry.npmjs.org/ws-stream-tunnel/-/ws-stream-tunnel-0.4.12.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQC1OHbZglev3gzdEMW7yc0GvuBTZDMwKnZMfmwkteFvNwIgSsLafhChs1qi2IaZTztUKA+i39PVS6aV1WyRpQGTcrw="}]},"maintainers":[{"name":"luojia","email":"luojia@luojia.me"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/ws-stream-tunnel-0.4.12.tgz_1517913055180_0.6025369772687554"},"directories":{}},"0.4.13":{"name":"ws-stream-tunnel","version":"0.4.13","repository":{"type":"git","url":"git+ssh://git@github.com/JiaJiaJiang/ws-stream-tunnel.git"},"description":"use websocket as a data tunnel","main":"index.js","scripts":{"test":"echo \"Error: no test specified\" && exit 1","start":"node index.js"},"keywords":["websocket","tcp","udp"],"author":{"name":"luojia@luojia.me"},"license":"MIT","dependencies":{"bufferutil":"^3.0.3","utf-8-validate":"^4.0.0","ws":"^4.0.0"},"devDependencies":{"byte-size":"^4.0.2"},"gitHead":"875c8d1218d4bcffdea183cde9ad07ac3c578e59","bugs":{"url":"https://github.com/JiaJiaJiang/ws-stream-tunnel/issues"},"homepage":"https://github.com/JiaJiaJiang/ws-stream-tunnel#readme","_id":"ws-stream-tunnel@0.4.13","_npmVersion":"5.4.2","_nodeVersion":"8.7.0","_npmUser":{"name":"luojia","email":"luojia@luojia.me"},"dist":{"integrity":"sha512-ef/ZKRir4SowCtK0Wpvb2+b0e+XVTGNmXcByXE+cWhBTAhI9Y/hR+qJYSALWpcOmsjWilvXbYDE5KPqkGQMwRA==","shasum":"5fb32c1553e9ae8185681ac008f0cca3eefd033d","tarball":"https://registry.npmjs.org/ws-stream-tunnel/-/ws-stream-tunnel-0.4.13.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQC9EzHmsfL5T7YTuG2FjVFNEd62QXESKTiQyW078lRybAIhANjpPVNmduLLnMq4gJmEmq64S348kNgCHxvVCImo9xZZ"}]},"maintainers":[{"name":"luojia","email":"luojia@luojia.me"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/ws-stream-tunnel-0.4.13.tgz_1517927697191_0.6055108068976551"},"directories":{}},"0.4.14":{"name":"ws-stream-tunnel","version":"0.4.14","repository":{"type":"git","url":"git+ssh://git@github.com/JiaJiaJiang/ws-stream-tunnel.git"},"description":"use websocket as a data tunnel","main":"index.js","scripts":{"test":"echo \"Error: no test specified\" && exit 1","start":"node index.js"},"keywords":["websocket","tcp","udp"],"author":{"name":"luojia@luojia.me"},"license":"MIT","dependencies":{"bufferutil":"^3.0.3","utf-8-validate":"^4.0.0","ws":"^4.0.0"},"devDependencies":{"byte-size":"^4.0.2"},"gitHead":"61a76bb7123eeba51468bf5aab63faad16d7a7ac","bugs":{"url":"https://github.com/JiaJiaJiang/ws-stream-tunnel/issues"},"homepage":"https://github.com/JiaJiaJiang/ws-stream-tunnel#readme","_id":"ws-stream-tunnel@0.4.14","_npmVersion":"5.4.2","_nodeVersion":"8.7.0","_npmUser":{"name":"luojia","email":"luojia@luojia.me"},"dist":{"integrity":"sha512-jU/dcqPqYULozl0BAMtlcI63utGmPA7UoNknrWmJ1d11cKWeDTHYJYl6630lzxHLSAbk9uke1wbKyP91PPyx9Q==","shasum":"ae5ab4c9916a1e136ef3bfca3cd757f2015adc2e","tarball":"https://registry.npmjs.org/ws-stream-tunnel/-/ws-stream-tunnel-0.4.14.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCICEdY/Bqh08XAOXv2xJds40lPTPeoPeZ11itjCmN8fWFAiBezDt6PifbzTH71lGkYIAwRkkiBRXrX+lrqceDVqs05A=="}]},"maintainers":[{"name":"luojia","email":"luojia@luojia.me"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/ws-stream-tunnel-0.4.14.tgz_1517948569391_0.4537961615715176"},"directories":{}},"0.4.15":{"name":"ws-stream-tunnel","version":"0.4.15","repository":{"type":"git","url":"git+ssh://git@github.com/JiaJiaJiang/ws-stream-tunnel.git"},"description":"use websocket as a data tunnel","main":"index.js","scripts":{"test":"echo \"Error: no test specified\" && exit 1","start":"node index.js"},"keywords":["websocket","tcp","udp"],"author":{"name":"luojia@luojia.me"},"license":"MIT","dependencies":{"bufferutil":"^3.0.3","utf-8-validate":"^4.0.0","ws":"^4.0.0"},"devDependencies":{"byte-size":"^4.0.2"},"gitHead":"b73e8efae281c48c7962a0227f008914534a8602","bugs":{"url":"https://github.com/JiaJiaJiang/ws-stream-tunnel/issues"},"homepage":"https://github.com/JiaJiaJiang/ws-stream-tunnel#readme","_id":"ws-stream-tunnel@0.4.15","_npmVersion":"5.4.2","_nodeVersion":"8.7.0","_npmUser":{"name":"luojia","email":"luojia@luojia.me"},"dist":{"integrity":"sha512-sdeY5weJC6EsgKkl3tZDhLbdsmor1ufX3unHvKHU6u15yaIZ6ddG5yVMsDolqCXuEO9u1p7ciZwRvKMgc04QhA==","shasum":"db8120a8242c2ee2bf6111edffb08a695534bfba","tarball":"https://registry.npmjs.org/ws-stream-tunnel/-/ws-stream-tunnel-0.4.15.tgz","fileCount":13,"unpackedSize":34767,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCYsUvfd1NavDz5cLSq+dmbQg/ej+/podiqkPWY9BxMlQIhALHHWrMVvsuqM0HDHxvaxrZR/o8JuvPcNYJR11O+fZME"}]},"maintainers":[{"name":"luojia","email":"luojia@luojia.me"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/ws-stream-tunnel_0.4.15_1518031529599_0.8491095744001018"},"_hasShrinkwrap":false},"0.4.16":{"name":"ws-stream-tunnel","version":"0.4.16","repository":{"type":"git","url":"git+ssh://git@github.com/JiaJiaJiang/ws-stream-tunnel.git"},"description":"use websocket as a data tunnel","main":"index.js","scripts":{"test":"echo \"Error: no test specified\" && exit 1","start":"node index.js"},"keywords":["websocket","tcp","udp"],"author":{"name":"luojia@luojia.me"},"license":"MIT","dependencies":{"bufferutil":"^3.0.3","utf-8-validate":"^4.0.0","ws":"^4.0.0"},"devDependencies":{"byte-size":"^4.0.2"},"gitHead":"01b1b8e169d33302e60c403ced2fff3591d9eb68","bugs":{"url":"https://github.com/JiaJiaJiang/ws-stream-tunnel/issues"},"homepage":"https://github.com/JiaJiaJiang/ws-stream-tunnel#readme","_id":"ws-stream-tunnel@0.4.16","_npmVersion":"5.4.2","_nodeVersion":"8.7.0","_npmUser":{"name":"luojia","email":"luojia@luojia.me"},"dist":{"integrity":"sha512-/bCX5sZP5BaCGdffAuUA1bPzTrJ4ogF3r5hOiMxIUBT5EewPrnDEgtKKb7MO1k8vkuYnTCQRezbyhH8XSSQfVQ==","shasum":"ca0aa85cd84d3f2143b0479f2c92c2bc8ace1b98","tarball":"https://registry.npmjs.org/ws-stream-tunnel/-/ws-stream-tunnel-0.4.16.tgz","fileCount":13,"unpackedSize":35016,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIC8UxpJijOKZTzg9sL7Q6l7l39FjZI8EKmudlmQtV7KNAiEAmtB4dRl67/l/yaU1h/UUyr0ov5DgUFzpx2mpr/5v7u4="}]},"maintainers":[{"name":"luojia","email":"luojia@luojia.me"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/ws-stream-tunnel_0.4.16_1518064592036_0.21656033921793805"},"_hasShrinkwrap":false},"0.4.17":{"name":"ws-stream-tunnel","version":"0.4.17","repository":{"type":"git","url":"git+ssh://git@github.com/JiaJiaJiang/ws-stream-tunnel.git"},"description":"use websocket as a data tunnel","main":"index.js","scripts":{"test":"echo \"Error: no test specified\" && exit 1","start":"node index.js"},"keywords":["websocket","tcp","udp"],"author":{"name":"luojia@luojia.me"},"license":"MIT","dependencies":{"bufferutil":"^3.0.3","utf-8-validate":"^4.0.0","ws":"^4.0.0"},"devDependencies":{"byte-size":"^4.0.2"},"gitHead":"5fc199c88d9a85746bd45efae90897a337561b4a","bugs":{"url":"https://github.com/JiaJiaJiang/ws-stream-tunnel/issues"},"homepage":"https://github.com/JiaJiaJiang/ws-stream-tunnel#readme","_id":"ws-stream-tunnel@0.4.17","_npmVersion":"5.4.2","_nodeVersion":"8.7.0","_npmUser":{"name":"luojia","email":"luojia@luojia.me"},"dist":{"integrity":"sha512-EzQskc53fhsBDCZoSHI8J5L8Cy3vMKkTzc9NYTn7W6yoGSJx3L0v+bSNdXJ3t+t9YTNhvykQ5MEECpC5VWx/8A==","shasum":"def0846d85e1beb42a2c2dfeb18cfa696c970a46","tarball":"https://registry.npmjs.org/ws-stream-tunnel/-/ws-stream-tunnel-0.4.17.tgz","fileCount":13,"unpackedSize":35038,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCZRRp25HatLavJyVSRqwDUqO8AovanrbkMoFUKR6yw3gIgYI6X7r6fcAzK01gdZVWq6M/DR3Lb2nkr2Fa32KkI+Kk="}]},"maintainers":[{"name":"luojia","email":"luojia@luojia.me"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/ws-stream-tunnel_0.4.17_1518064757532_0.5333979150012929"},"_hasShrinkwrap":false},"0.4.18":{"name":"ws-stream-tunnel","version":"0.4.18","repository":{"type":"git","url":"git+ssh://git@github.com/JiaJiaJiang/ws-stream-tunnel.git"},"description":"use websocket as a data tunnel","main":"index.js","scripts":{"test":"echo \"Error: no test specified\" && exit 1","start":"node index.js"},"keywords":["websocket","tcp","udp"],"author":{"name":"luojia@luojia.me"},"license":"MIT","dependencies":{"bufferutil":"^3.0.3","utf-8-validate":"^4.0.0","ws":"^4.0.0"},"devDependencies":{"byte-size":"^4.0.2"},"gitHead":"5a1d33c974fc2e2d9aeb09a67726b670e22b988c","bugs":{"url":"https://github.com/JiaJiaJiang/ws-stream-tunnel/issues"},"homepage":"https://github.com/JiaJiaJiang/ws-stream-tunnel#readme","_id":"ws-stream-tunnel@0.4.18","_npmVersion":"5.4.2","_nodeVersion":"8.7.0","_npmUser":{"name":"luojia","email":"luojia@luojia.me"},"dist":{"integrity":"sha512-ZFah/NlMTi+Oj4JS5XTde9sxZZnODKs2WsSdtVz/64TvjPaXsOA7jnY424hFNL5+bbGkBc+al3cGvmG0GIRrYw==","shasum":"e6698e2cadfc2d2b11f63c6b56892daec248a65c","tarball":"https://registry.npmjs.org/ws-stream-tunnel/-/ws-stream-tunnel-0.4.18.tgz","fileCount":13,"unpackedSize":35044,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQC/sJiFREQgnFzo/y5DIutdOebUjeL4PfObbMsGPfDNwwIgOS8xw/EZDqP6Eq+mqZICSn3436+ovHdR5GusqFPoCng="}]},"maintainers":[{"name":"luojia","email":"luojia@luojia.me"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/ws-stream-tunnel_0.4.18_1518071239858_0.3590448075437651"},"_hasShrinkwrap":false},"0.4.19":{"name":"ws-stream-tunnel","version":"0.4.19","repository":{"type":"git","url":"git+ssh://git@github.com/JiaJiaJiang/ws-stream-tunnel.git"},"description":"use websocket as a data tunnel","main":"index.js","scripts":{"test":"echo \"Error: no test specified\" && exit 1","start":"node index.js"},"keywords":["websocket","tcp","udp"],"author":{"name":"luojia@luojia.me"},"license":"MIT","dependencies":{"bufferutil":"^3.0.3","utf-8-validate":"^4.0.0","ws":"^4.0.0"},"devDependencies":{"byte-size":"^4.0.2"},"gitHead":"70ce2da51e489567a12bf8425a322d777199667e","bugs":{"url":"https://github.com/JiaJiaJiang/ws-stream-tunnel/issues"},"homepage":"https://github.com/JiaJiaJiang/ws-stream-tunnel#readme","_id":"ws-stream-tunnel@0.4.19","_npmVersion":"5.4.2","_nodeVersion":"8.7.0","_npmUser":{"name":"luojia","email":"luojia@luojia.me"},"dist":{"integrity":"sha512-BLox8aXPFsyUoyLRXRH2ARzrp5fSN+nitsez34E5Blk0bS7VrIavl2Y8tQe+hfbScrT6iyfNosz4/qWtV+gMfw==","shasum":"9a40ef791990e6ab904eee6c47ce820c1f941519","tarball":"https://registry.npmjs.org/ws-stream-tunnel/-/ws-stream-tunnel-0.4.19.tgz","fileCount":13,"unpackedSize":35120,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDBSzHMUr3RYswkMrciQkWoJMWzKfYSZrZIJcKIFM9c6AIgb2SkOQ/k4TYijNS95ff8oECXSn/Mniu1MFiO+edxBkU="}]},"maintainers":[{"name":"luojia","email":"luojia@luojia.me"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/ws-stream-tunnel_0.4.19_1518109420092_0.018894477232470397"},"_hasShrinkwrap":false},"0.4.20":{"name":"ws-stream-tunnel","version":"0.4.20","repository":{"type":"git","url":"git+ssh://git@github.com/JiaJiaJiang/ws-stream-tunnel.git"},"description":"use websocket as a data tunnel","main":"index.js","scripts":{"test":"echo \"Error: no test specified\" && exit 1","start":"node index.js"},"keywords":["websocket","tcp","udp"],"author":{"name":"luojia@luojia.me"},"license":"MIT","dependencies":{"bufferutil":"^3.0.3","utf-8-validate":"^4.0.0","ws":"^4.0.0"},"devDependencies":{"byte-size":"^4.0.2"},"gitHead":"7813802fb10520ae2fff6a87d12f893ab452ca9d","bugs":{"url":"https://github.com/JiaJiaJiang/ws-stream-tunnel/issues"},"homepage":"https://github.com/JiaJiaJiang/ws-stream-tunnel#readme","_id":"ws-stream-tunnel@0.4.20","_npmVersion":"5.4.2","_nodeVersion":"8.7.0","_npmUser":{"name":"luojia","email":"luojia@luojia.me"},"dist":{"integrity":"sha512-Wkmf6U40dTbZduVTtWXr8xz/LC1CXKnkz/UGRlstbDf4D7nc4HFjiM6n24VnpDXrspZ6X1zALc/TvGcf++g15Q==","shasum":"9eed10f888fd365d2af9b9c60eabd4dfe27cead1","tarball":"https://registry.npmjs.org/ws-stream-tunnel/-/ws-stream-tunnel-0.4.20.tgz","fileCount":13,"unpackedSize":37155,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIEXdMe1jXoqZxG/sWgmz1oCtD9UtghGY0/AKmrMrPmaAAiEAxyGX3iD89CBs39fQkEszXAyqk2DTYtkumr8JRPBRhQw="}]},"maintainers":[{"name":"luojia","email":"luojia@luojia.me"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/ws-stream-tunnel_0.4.20_1518249637750_0.2722042726264111"},"_hasShrinkwrap":false},"0.4.21":{"name":"ws-stream-tunnel","version":"0.4.21","repository":{"type":"git","url":"git+ssh://git@github.com/JiaJiaJiang/ws-stream-tunnel.git"},"description":"use websocket as a data tunnel","main":"index.js","scripts":{"test":"echo \"Error: no test specified\" && exit 1","start":"node index.js"},"keywords":["websocket","tcp","udp"],"author":{"name":"luojia@luojia.me"},"license":"MIT","dependencies":{"bufferutil":"^3.0.3","utf-8-validate":"^4.0.0","ws":"^4.0.0"},"devDependencies":{"byte-size":"^4.0.2"},"gitHead":"a23999d25b0c4eb73f9bc86b45c3af0a6fb3dc06","bugs":{"url":"https://github.com/JiaJiaJiang/ws-stream-tunnel/issues"},"homepage":"https://github.com/JiaJiaJiang/ws-stream-tunnel#readme","_id":"ws-stream-tunnel@0.4.21","_npmVersion":"5.4.2","_nodeVersion":"8.7.0","_npmUser":{"name":"luojia","email":"luojia@luojia.me"},"dist":{"integrity":"sha512-DP8fjzR90a+qz9KzubgLJjJXQ/drKG+x753eV55U+gytWGOqIFJDC9LGz7EKFI+Ukrdo4rZP/ym07IsLghzqMA==","shasum":"bf72d919ef2020b9530c9e57455bec212aef0f15","tarball":"https://registry.npmjs.org/ws-stream-tunnel/-/ws-stream-tunnel-0.4.21.tgz","fileCount":13,"unpackedSize":37115,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIDVu3RLmePyyVWP4ODolGsHl/TxtZYrM365+JbAsSmJVAiEA/DSKu3bp46KnygPy+G9xqj/eFRx5zuSflXoyVXRFm3A="}]},"maintainers":[{"name":"luojia","email":"luojia@luojia.me"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/ws-stream-tunnel_0.4.21_1518250493593_0.20039477898128233"},"_hasShrinkwrap":false},"0.4.22":{"name":"ws-stream-tunnel","version":"0.4.22","repository":{"type":"git","url":"git+ssh://git@github.com/JiaJiaJiang/ws-stream-tunnel.git"},"description":"use websocket as a data tunnel","main":"index.js","scripts":{"test":"echo \"Error: no test specified\" && exit 1","start":"node index.js"},"keywords":["websocket","tcp","udp"],"author":{"name":"luojia@luojia.me"},"license":"MIT","dependencies":{"bufferutil":"^3.0.3","utf-8-validate":"^4.0.0","ws":"^4.0.0"},"devDependencies":{"byte-size":"^4.0.2"},"gitHead":"cd4f5ab93e2f2255bc85942a91354032e85c2d68","bugs":{"url":"https://github.com/JiaJiaJiang/ws-stream-tunnel/issues"},"homepage":"https://github.com/JiaJiaJiang/ws-stream-tunnel#readme","_id":"ws-stream-tunnel@0.4.22","_npmVersion":"5.4.2","_nodeVersion":"8.7.0","_npmUser":{"name":"luojia","email":"luojia@luojia.me"},"dist":{"integrity":"sha512-KWq+K6ab3+XBChXfM1LwWgWdPly4Uq07QSlpmLUIBkKbamNAH2mUd5k9b5ppJqm409BPtgNAqlHtEPS7ni9lZQ==","shasum":"21ad5827fc111dc2c4ac9dc8995574b5f411d41d","tarball":"https://registry.npmjs.org/ws-stream-tunnel/-/ws-stream-tunnel-0.4.22.tgz","fileCount":13,"unpackedSize":37411,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQC0tHN/bGWvdnoyKxlSZPvP0CrovflH6tPwbjpPdF1/uQIhAKL8LpHZt23tdsOmQjipKPztRXCcY8qnhf86UOH111kn"}]},"maintainers":[{"name":"luojia","email":"luojia@luojia.me"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/ws-stream-tunnel_0.4.22_1518548986019_0.009613283453496546"},"_hasShrinkwrap":false},"0.4.23":{"name":"ws-stream-tunnel","version":"0.4.23","repository":{"type":"git","url":"git+ssh://git@github.com/JiaJiaJiang/ws-stream-tunnel.git"},"description":"use websocket as a data tunnel","main":"index.js","scripts":{"test":"echo \"Error: no test specified\" && exit 1","start":"node index.js"},"keywords":["websocket","tcp","udp"],"author":{"name":"luojia@luojia.me"},"license":"MIT","dependencies":{"bufferutil":"^3.0.3","utf-8-validate":"^4.0.0","ws":"^4.0.0"},"devDependencies":{"byte-size":"^4.0.2"},"gitHead":"98b20b156a356e2299ed4ce1b101d15dd2c8c856","bugs":{"url":"https://github.com/JiaJiaJiang/ws-stream-tunnel/issues"},"homepage":"https://github.com/JiaJiaJiang/ws-stream-tunnel#readme","_id":"ws-stream-tunnel@0.4.23","_npmVersion":"5.4.2","_nodeVersion":"8.7.0","_npmUser":{"name":"luojia","email":"luojia@luojia.me"},"dist":{"integrity":"sha512-7HpsuGVJcd4vh6QujfCrMI8GfL/ySJtX21kiHRnfXCbMMoU4Le4mXOzUvtJ1/Muh+ocjLZkGEMtA0xDKzFcAMw==","shasum":"732109d25126f109d319cc48a99b0501f863e9c5","tarball":"https://registry.npmjs.org/ws-stream-tunnel/-/ws-stream-tunnel-0.4.23.tgz","fileCount":13,"unpackedSize":37422,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIEOW3fgTxylXT8Gey71GRYq8SOU4Jc7Qfh5Dz/AL1LRXAiEA2o70qHK9e7awwSKRiRmzNb0eJAgHPbymXLtbiZe0IR8="}]},"maintainers":[{"name":"luojia","email":"luojia@luojia.me"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/ws-stream-tunnel_0.4.23_1518685687654_0.07443373913266482"},"_hasShrinkwrap":false},"0.4.24":{"name":"ws-stream-tunnel","version":"0.4.24","repository":{"type":"git","url":"git+ssh://git@github.com/JiaJiaJiang/ws-stream-tunnel.git"},"description":"use websocket as a data tunnel","main":"index.js","scripts":{"test":"echo \"Error: no test specified\" && exit 1","start":"node index.js"},"keywords":["websocket","tcp","udp"],"author":{"name":"luojia@luojia.me"},"license":"MIT","dependencies":{"bufferutil":"^3.0.3","utf-8-validate":"^4.0.0","ws":"^4.0.0"},"devDependencies":{"byte-size":"^4.0.2"},"gitHead":"01d7d487df5076c7c63e5ebd820d253e0c1fb0db","bugs":{"url":"https://github.com/JiaJiaJiang/ws-stream-tunnel/issues"},"homepage":"https://github.com/JiaJiaJiang/ws-stream-tunnel#readme","_id":"ws-stream-tunnel@0.4.24","_npmVersion":"5.4.2","_nodeVersion":"8.7.0","_npmUser":{"name":"luojia","email":"luojia@luojia.me"},"dist":{"integrity":"sha512-IPdosXJfH86hC6qsdBjW2Mf+gGLucd5D2U0oaYD/85JNI/qf6S7qtV56SgMswD2mXxNja+YLlerIT0rCS6Dv1A==","shasum":"100fdbc795f727b34d57c00a2a452b5e37855285","tarball":"https://registry.npmjs.org/ws-stream-tunnel/-/ws-stream-tunnel-0.4.24.tgz","fileCount":13,"unpackedSize":38196,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIHsSU/bKaQZAB5FcKM/5J50j/iVkNDBxsVKcO7/pucgDAiEA17wRPH2Ig4DT3flTplX0duhHeBcEXxJTtztQXQyVoHs="}]},"maintainers":[{"name":"luojia","email":"luojia@luojia.me"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/ws-stream-tunnel_0.4.24_1518773836266_0.4992901381524475"},"_hasShrinkwrap":false},"0.4.25":{"name":"ws-stream-tunnel","version":"0.4.25","repository":{"type":"git","url":"git+ssh://git@github.com/JiaJiaJiang/ws-stream-tunnel.git"},"description":"use websocket as a data tunnel","main":"index.js","scripts":{"test":"echo \"Error: no test specified\" && exit 1","start":"node index.js"},"keywords":["websocket","tcp","udp"],"author":{"name":"luojia@luojia.me"},"license":"MIT","dependencies":{"bufferutil":"^3.0.3","utf-8-validate":"^4.0.0","ws":"^4.0.0","debug":"^3.1.0"},"devDependencies":{"byte-size":"^4.0.2"},"gitHead":"ad705e417c4f2b794bb403e52d3ff5f304ac129d","bugs":{"url":"https://github.com/JiaJiaJiang/ws-stream-tunnel/issues"},"homepage":"https://github.com/JiaJiaJiang/ws-stream-tunnel#readme","_id":"ws-stream-tunnel@0.4.25","_npmVersion":"5.6.0","_nodeVersion":"9.5.0","_npmUser":{"name":"luojia","email":"luojia@luojia.me"},"dist":{"integrity":"sha512-HyUwImnkZX+COf4reYuvz5nPchiNPZAfE3NK9ipeuYQx7+He2rVmLQfHYOEOuRsWJaReASKNW3BmsX6PRp7lyw==","shasum":"60288a8516e0ea088a2a109c60a80893e37109a8","tarball":"https://registry.npmjs.org/ws-stream-tunnel/-/ws-stream-tunnel-0.4.25.tgz","fileCount":17,"unpackedSize":46661,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCID0Wvn5zJnmd/b4j6jY28PxWAm+bsxum+oKNt2BegknrAiBgVN9mNxTgmidMVfuv93YKhCFGm2Y+vMd+QydBDlX3Rg=="}]},"maintainers":[{"name":"luojia","email":"luojia@luojia.me"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/ws-stream-tunnel_0.4.25_1518798100745_0.8122502371097791"},"_hasShrinkwrap":false},"0.4.26":{"name":"ws-stream-tunnel","version":"0.4.26","repository":{"type":"git","url":"git+ssh://git@github.com/JiaJiaJiang/ws-stream-tunnel.git"},"description":"use websocket as a data tunnel","main":"index.js","scripts":{"test":"echo \"Error: no test specified\" && exit 1","start":"node index.js"},"keywords":["websocket","tcp","udp"],"author":{"name":"luojia@luojia.me"},"license":"MIT","dependencies":{"bufferutil":"^3.0.3","utf-8-validate":"^4.0.0","ws":"^4.0.0","debug":"^3.1.0"},"devDependencies":{"byte-size":"^4.0.2"},"gitHead":"d16d53257f23f1535540b8c4caaecf049bd1536d","bugs":{"url":"https://github.com/JiaJiaJiang/ws-stream-tunnel/issues"},"homepage":"https://github.com/JiaJiaJiang/ws-stream-tunnel#readme","_id":"ws-stream-tunnel@0.4.26","_npmVersion":"5.6.0","_nodeVersion":"9.5.0","_npmUser":{"name":"luojia","email":"luojia@luojia.me"},"dist":{"integrity":"sha512-ZkIFMuUbCj8ky/t09qTM8rK0A2MQiVWjzTo6fYc1ra3rEDjThO4jugdg+d8w8J15Bt0MilT4/NuNSDAQwHQrWQ==","shasum":"ac8301da1cb98662e0e74bcc761c66273bb1ac19","tarball":"https://registry.npmjs.org/ws-stream-tunnel/-/ws-stream-tunnel-0.4.26.tgz","fileCount":17,"unpackedSize":47023,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIFfysRVBjJOM0t/iWT23z7eSsa389IjYkYViZpSgn2B9AiEAuaAbfJt8qOjukRuXJYGoOntQBHFZiIQkeKow25Fkjn4="}]},"maintainers":[{"name":"luojia","email":"luojia@luojia.me"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/ws-stream-tunnel_0.4.26_1518799118374_0.8095430416445129"},"_hasShrinkwrap":false},"0.4.27":{"name":"ws-stream-tunnel","version":"0.4.27","repository":{"type":"git","url":"git+ssh://git@github.com/JiaJiaJiang/ws-stream-tunnel.git"},"description":"use websocket as a data tunnel","main":"index.js","scripts":{"test":"echo \"Error: no test specified\" && exit 1","start":"node index.js"},"keywords":["websocket","tcp","udp"],"author":{"name":"luojia@luojia.me"},"license":"MIT","dependencies":{"bufferutil":"^3.0.3","utf-8-validate":"^4.0.0","ws":"^4.0.0","debug":"^3.1.0"},"devDependencies":{"byte-size":"^4.0.2"},"gitHead":"50c1b8560e35e1d4e0711f7eb31b6110b86c3c1a","bugs":{"url":"https://github.com/JiaJiaJiang/ws-stream-tunnel/issues"},"homepage":"https://github.com/JiaJiaJiang/ws-stream-tunnel#readme","_id":"ws-stream-tunnel@0.4.27","_npmVersion":"5.6.0","_nodeVersion":"9.5.0","_npmUser":{"name":"luojia","email":"luojia@luojia.me"},"dist":{"integrity":"sha512-pHYTuaBPT++8SWTM0Y954CtquFg3KqUg/As5Bft5k1CiVeCJnUykO7Ffvojsk4bZtJ/pVlWJaT5xQCaVK99vvw==","shasum":"dade8a1096fc99313678981e4d5bc7be8f29aa1d","tarball":"https://registry.npmjs.org/ws-stream-tunnel/-/ws-stream-tunnel-0.4.27.tgz","fileCount":18,"unpackedSize":47952,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIDCrApAXTE5/VhIGq/cVZLOJ7Fl/0MOhQTY1YABbxwyrAiEAtwu4onpXlw3r4m8Q2EPXtn7NBF66BeZwTxEx9ea+jT8="}]},"maintainers":[{"name":"luojia","email":"luojia@luojia.me"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/ws-stream-tunnel_0.4.27_1518931660079_0.8449559448824377"},"_hasShrinkwrap":false},"0.4.28":{"name":"ws-stream-tunnel","version":"0.4.28","repository":{"type":"git","url":"git+ssh://git@github.com/JiaJiaJiang/ws-stream-tunnel.git"},"description":"use websocket as a data tunnel","main":"index.js","scripts":{"test":"echo \"Error: no test specified\" && exit 1","start":"node index.js"},"keywords":["websocket","tcp","udp"],"author":{"name":"luojia@luojia.me"},"license":"MIT","dependencies":{"bufferutil":"^3.0.3","utf-8-validate":"^4.0.0","ws":"^4.0.0","debug":"^3.1.0"},"devDependencies":{"byte-size":"^4.0.2"},"gitHead":"85aa978e20b07d1488d3472328cd36d2b4d10538","bugs":{"url":"https://github.com/JiaJiaJiang/ws-stream-tunnel/issues"},"homepage":"https://github.com/JiaJiaJiang/ws-stream-tunnel#readme","_id":"ws-stream-tunnel@0.4.28","_npmVersion":"5.6.0","_nodeVersion":"9.5.0","_npmUser":{"name":"luojia","email":"luojia@luojia.me"},"dist":{"integrity":"sha512-jDAbKj/nBBoJ/kDdkm9nc8M4mrP/gjKrOZnn5/rRvAKyAE4e/BB/mJIrw9fpIbl/bQDTURKdEEydaAeFaAi6Ow==","shasum":"17885872a4261c9311cfdaea724aa03d6420ffbb","tarball":"https://registry.npmjs.org/ws-stream-tunnel/-/ws-stream-tunnel-0.4.28.tgz","fileCount":18,"unpackedSize":47924,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIGdjKO1H6Tn7GJJhj2Z51tMF5EMpthZ6Oj+QxZkNXe3bAiBVl9MIHDYaxENl0bI3YLM09CBgtWc3/RPjO5ilnzb9wA=="}]},"maintainers":[{"name":"luojia","email":"luojia@luojia.me"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/ws-stream-tunnel_0.4.28_1518932206794_0.31100207500200683"},"_hasShrinkwrap":false},"0.4.29":{"name":"ws-stream-tunnel","version":"0.4.29","repository":{"type":"git","url":"git+ssh://git@github.com/JiaJiaJiang/ws-stream-tunnel.git"},"description":"use websocket as a data tunnel","main":"index.js","scripts":{"test":"echo \"Error: no test specified\" && exit 1","start":"node index.js"},"keywords":["websocket","tcp","udp"],"author":{"name":"luojia@luojia.me"},"license":"MIT","dependencies":{"bufferutil":"^3.0.3","utf-8-validate":"^4.0.0","ws":"^4.0.0","debug":"^3.1.0"},"devDependencies":{"byte-size":"^4.0.2"},"gitHead":"5d8a70c1561c536e3ec19bdd7e1f0c2dc070ab47","bugs":{"url":"https://github.com/JiaJiaJiang/ws-stream-tunnel/issues"},"homepage":"https://github.com/JiaJiaJiang/ws-stream-tunnel#readme","_id":"ws-stream-tunnel@0.4.29","_nodeVersion":"17.4.0","_npmVersion":"8.3.1","dist":{"integrity":"sha512-SjSmoLSXMx1l5dtKKDDWaq76yy+pAC8QDN3z4ptqdolaVUDmZvIp1ofLO8jNzn2bMELKEtYm94pmucST1AYCsg==","shasum":"0c37018bec78c57e83d8feafa7a8cc614f5ea2d0","tarball":"https://registry.npmjs.org/ws-stream-tunnel/-/ws-stream-tunnel-0.4.29.tgz","fileCount":18,"unpackedSize":47922,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJh9+QbCRA9TVsSAnZWagAAvqkP/30rxKMSLn0gU8hnY9GI\nT78K8Tmc8y9AP1ZWyh5VE3bBvjNQnlANuv7R2zA40AthfIeK80MHzOHz8Jdc\nuZrfcPkvHrqR3lz9ZCIn/sxxwVbOQZtnmvIT8d+yYkE5+sF77yX+pSTzjICO\nD+g3lcwgu+PVCRuAOX4tNxZrAI5fKFfdBS3Zdra1J9/LL7pORmqFXLFmSd0H\novWpF7aGKSPV0CP/K2rFrK6MI7/AuGOhgDRyp1/wDgTC6psZ07RJ0qUzfWq+\nJWfpIdltNKi8f46yDSsrPQSANttNmiKXXBF33Zfhpbf7ugMB3dAxlC/NuPth\nOgClsSppzKae39rnXFIj9vlYlHuSJoWldsRGFKQoskX+Z/EfSLsJ3JDNjdrG\nMdIUAfvCf8wFlqUhfvvkq1eeS+o0YD0QL9/6o9yHyh0GRIMTB6JSAB6LZ5W9\nHo7EOx5mY4cZTiXwEUMoGAv92+nJfY7zCh5K9v+KKxoReKEgkOTmh6FneJ2v\nCt2es+TSZHId8KGPnwaKUa8j5mgFDgblvnfDir/8Wl8NK2dZ+mKadH/8o2va\nGWM8itsJl3XOqC5THo4+7yjOKI9+9xCphaKpdptdgs1cW9M1/wdrH9522JSv\nSQ9UIsRkSxX5H+1zUX3Gc6oX6wmMrrrx4dx4DbrZTm0Kfe4f/8m7/3guNGc3\n2QRB\r\n=IKDU\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQD5uBX+tjMYYNTHUhbcaPmcPTnpP67SDmIqOiK5y8VOggIgEfV2M3APJTlVAa2OaVqF1OIWOCXVJVtQLw1ps2BYGq4="}]},"_npmUser":{"name":"luojia","email":"luojia@luojia.me"},"directories":{},"maintainers":[{"name":"luojia","email":"luojia@luojia.me"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/ws-stream-tunnel_0.4.29_1643635738943_0.9615518024999976"},"_hasShrinkwrap":false}},"readme":"# ws-stream-tunnel\n\nFor node.js\n\nuse node.js stream over websocket.\n\n## Install\n\n```\nnpm i ws-stream-tunnel --save\n```\n\n## Usage\nCreate a `server`,then use `client` to connect it. The client will negotiate with server about the tunnel type.(Both sides can create streams in the tunnel)\nThen the tunnel will be used to transfer stream.\n\n```none\nwebsocket connection\n|_one of the tunnel types\n   |_stream(s)\n      |_data\n```\n\n```javascript\nconst {server,client}=require('ws-stream-tunnel');\n\n//server\nconst tServer=new server({\n\tport:80,\n\tperMessageDeflate:false,\n});\ntServer.on('tunnel_open',t=>{\n\tconsole.log('server','new tunnel');\n\n\tt.on('stream_open',stream=>{\n\t\tconsole.log('server','stream opened');\n\t\t\n\t\t//do sth with the stream\n\t\tstream.on('data',chunk=>{\n\t\t\tconsole.log('server','recevied data',chunk)\n\t\t});\n\n\t}).once('close',()=>{\n\t\tconsole.log('server','tunnel closed')\n\t})\n});\n\n\n//client\nconst tClient=new client({\n\taddr:'ws://127.0.0.1:80',\n\tmode:'subStream',\n});\ntClient.on('tunnel_open',tunnel=>{\n\tconsole.log('client','tunnel opened');\n\n\ttunnel.on('stream_open',stream=>{\n\t\tconsole.log('client','stream opened')\n\t\t\n\t\t//do sth with the stream\n\t\tstream.write('poi');\n\n\t}).on('stream_close',stream=>{\n\t\tconsole.log('client','stream closed')\n\t}).on('error',e=>{\n\t\tconsole.error('client:error',e)\n\t}).once('close',()=>{\n\t\tconsole.log('client','tunnel closed')\n\t});\n\n\ttunnel.createStream();//create a sub stream\n});\n```\n\n## Tunnel types\n\n* subStream : mix multi-streams in one tunnel\n* stream : extends from subStream,but only allows one stream in the tunnel\n\n------\n\n## server\n\n### Class : tunnelServer(options)\n\nThe server class extends from `ws.server`,`options` is the same with [here](https://github.com/websockets/ws/blob/master/doc/ws.md#new-websocketserveroptions-callback).\n\n*Two new event*\n* 'tunnel_open' : (new tunnel)\n* 'tunnel_close' : (the closed tunnel)\n\n*One more property*\n* tunnelHelper : see tunnelHelper below\n\n## client\nThe server class extends from `events`.\n\n### Class : tunnelClient(options)\n\n*options*\n* mode : tunnel type\n* addr : target ws address\n* ws : options object for ws connection,see [here](https://github.com/websockets/ws/blob/master/doc/ws.md#new-websocketaddress-protocols-options)\n* idleTimeout : millisecond before closing the connection,0 presents always keep the connection,defaults to 0\n* keepBrokenTunnel : millisecond before closing the broken tunnel. The tunnel will immediately close if this option is not set\n\n*events*\n* 'tunnel_open':(tunnel)\n* 'tunnel_close':(tunnel)\n\n*properties*\n* connectionManager : connectionManager instance\n* tunnelHelper : tunnelHelper instance\n* closed : boolean\n\n*getters*\n* tunnelID\n* tunnelCreated : boolean\n* tunnel : tunnel of the `mode` options\n\n*methods*\n#### close()\n\nclose the client\n\n#### closeTunnel(reason)\n\nclose the tunnel,this method will destroy all alive streams,the reason will be emit as the error event to each stream.\n\n#### requestTunnel(options)\n\nrequest a tunnell for the connection\n\noptions:\n* mode : see `Tunnel types` on the top\n* keepBrokenTunnel : see `tunnelClient` options\n\nIf tunnelID exists, the client will attempt to use the tunnel ID to resume the broken tunnel transfer.\n\n### Class:  tunnelHelper\n\nthis class is used in client and server to manage tunnels\n\n*properties*\n\n* tunnels : a Map stores all tunnels (tunnelID=>tunnel)\n\n# extra\n\nTunnel types extends from `tunnelManager` class in `lib/tunnel.js`,tunnels are defined in `tunnels` directory.See `README.md` in each dirs.","maintainers":[{"name":"luojia","email":"luojia@luojia.me"}],"time":{"modified":"2022-05-24T18:32:41.768Z","created":"2017-11-19T16:24:33.264Z","1.0.0":"2017-11-19T16:24:33.264Z","0.0.1":"2017-11-19T16:30:04.252Z","0.1.1":"2017-11-19T16:58:28.416Z","0.1.2":"2017-11-20T03:53:42.458Z","0.1.3":"2017-11-22T11:42:47.514Z","0.1.4":"2017-11-25T18:31:12.830Z","0.1.5":"2017-11-25T19:25:08.378Z","0.1.6":"2017-11-30T15:55:40.133Z","0.1.7":"2017-12-01T01:53:38.585Z","0.2.0":"2017-12-02T18:04:57.269Z","0.3.0":"2017-12-07T15:19:34.929Z","0.3.1":"2017-12-07T16:08:32.106Z","0.4.0":"2017-12-09T09:14:33.770Z","0.4.1":"2017-12-09T19:14:52.503Z","0.4.2":"2017-12-10T18:47:06.099Z","0.4.3":"2017-12-11T08:52:25.468Z","0.4.4":"2017-12-22T11:45:51.625Z","0.4.5":"2018-01-25T07:21:35.850Z","0.4.6":"2018-01-25T18:08:26.245Z","0.4.7":"2018-01-27T17:25:12.987Z","0.4.8":"2018-02-02T19:38:04.193Z","0.4.9":"2018-02-03T04:24:38.387Z","0.4.10":"2018-02-03T04:30:14.605Z","0.4.11":"2018-02-03T06:17:49.480Z","0.4.12":"2018-02-06T10:30:55.341Z","0.4.13":"2018-02-06T14:34:58.333Z","0.4.14":"2018-02-06T20:22:49.472Z","0.4.15":"2018-02-07T19:25:29.667Z","0.4.16":"2018-02-08T04:36:32.112Z","0.4.17":"2018-02-08T04:39:18.620Z","0.4.18":"2018-02-08T06:27:19.945Z","0.4.19":"2018-02-08T17:03:40.207Z","0.4.20":"2018-02-10T08:00:38.796Z","0.4.21":"2018-02-10T08:14:54.342Z","0.4.22":"2018-02-13T19:09:46.684Z","0.4.23":"2018-02-15T09:08:08.367Z","0.4.24":"2018-02-16T09:37:16.410Z","0.4.25":"2018-02-16T16:21:40.954Z","0.4.26":"2018-02-16T16:38:38.666Z","0.4.27":"2018-02-18T05:27:40.268Z","0.4.28":"2018-02-18T05:36:46.875Z","0.4.29":"2022-01-31T13:28:59.075Z"},"keywords":["websocket","tcp","udp"],"author":{"name":"luojia@luojia.me"},"license":"MIT","readmeFilename":"README.md","homepage":"https://github.com/JiaJiaJiang/ws-stream-tunnel#readme","repository":{"type":"git","url":"git+ssh://git@github.com/JiaJiaJiang/ws-stream-tunnel.git"},"bugs":{"url":"https://github.com/JiaJiaJiang/ws-stream-tunnel/issues"}}