{"_id":"sock-rpc-stats","_rev":"30-da46063953884fcf7190866b50a70556","name":"sock-rpc-stats","description":"Stats RPC server for Arma 3","dist-tags":{"latest":"0.0.16"},"versions":{"0.0.1":{"name":"sock-rpc-stats","main":"./lib/stats.js","bin":{"sock-rpc-stats":"./bin/sock-rpc-stats"},"version":"0.0.1","description":"Stats persistency for Arma 3 using mongoDB","scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"repository":{"type":"git","url":"git+https://bitbucket.org/micovery/sock-rpc-stats.git"},"dependencies":{"sock-rpc":"1.0.x","async":"0.9.x","mongodb":"1.4.x","mysql":"2.5.x","yargs":"1.3.x","util-logging":"0.0.x","cassandra-driver":"1.0.x","wait.for":"0.6.x","redis":"0.12.x","cradle":"0.6.x","json-stable-stringify":"1.0.0"},"author":{"name":"Miguel Mendoza"},"licenses":[{"type":"MIT","url":"https://bitbucket.org/micovery/sock-rpc-stats/raw/master/LICENSE"}],"devDependencies":{},"keywords":["Arma 3","mongoDB","stats","persistency"],"_id":"sock-rpc-stats@0.0.1","_shasum":"22e5807ff5492a2841631ff474452c773c6a14ba","_from":".","_npmVersion":"1.4.9","_npmUser":{"name":"micovery","email":"miguel@micovery.com"},"maintainers":[{"name":"micovery","email":"miguel@micovery.com"}],"dist":{"shasum":"22e5807ff5492a2841631ff474452c773c6a14ba","tarball":"https://registry.npmjs.org/sock-rpc-stats/-/sock-rpc-stats-0.0.1.tgz","integrity":"sha512-07oD+LppCDzILMhE0W69iAQN0BdAHK0xME2rfQoGFfnSpl9BHtfhBffjES35H9EEg3Z5li/H9ZHgkyWcVbLb2g==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDgxpLvTuo2Pbppgk0gPaVNpiDE4W8mQ3gglc57OsbuywIgUNqv4SNfq0R8WuxPwL8mHBg/Fr0xosukelXdJbBvs/A="}]}},"0.0.2":{"name":"sock-rpc-stats","main":"./lib/stats.js","bin":{"sock-rpc-stats":"./bin/sock-rpc-stats"},"version":"0.0.2","description":"Stats RPC server for Arma 3","scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"repository":{"type":"git","url":"git+https://bitbucket.org/micovery/sock-rpc-stats.git"},"dependencies":{"sock-rpc":"1.0.x","async":"0.9.x","mongodb":"1.4.x","mysql":"2.5.x","yargs":"1.3.x","util-logging":"0.0.x","cassandra-driver":"1.0.x","wait.for":"0.6.x","redis":"0.12.x","cradle":"0.6.x","json-stable-stringify":"1.0.0"},"author":{"name":"Miguel Mendoza"},"licenses":[{"type":"MIT","url":"https://bitbucket.org/micovery/sock-rpc-stats/raw/master/LICENSE"}],"devDependencies":{},"keywords":["Arma 3","mongoDB","couchDB","Redis","Cassandra","MySQL","stats","persistency"],"_id":"sock-rpc-stats@0.0.2","_shasum":"1346c2704f2f2c66c26e2cd01b2797eca480ef55","_from":".","_npmVersion":"1.4.9","_npmUser":{"name":"micovery","email":"miguel@micovery.com"},"maintainers":[{"name":"micovery","email":"miguel@micovery.com"}],"dist":{"shasum":"1346c2704f2f2c66c26e2cd01b2797eca480ef55","tarball":"https://registry.npmjs.org/sock-rpc-stats/-/sock-rpc-stats-0.0.2.tgz","integrity":"sha512-ih3K5GmSHnRpjeinHUs8lHd4/4ktpJZTpTamy2smTiLm+M6RJIG/pAEBz3aHqE3VQWceurWYk2uFtANDVi8vtw==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIFTg993oiThOuRHZ5TikDSDDsTFTDORuD1qosJW/E/vOAiB/x60dsb6vvAKBu08ksO/DTDiJln8eXWCoLdhzRlLbTQ=="}]}},"0.0.3":{"name":"sock-rpc-stats","main":"./lib/stats.js","bin":{"sock-rpc-stats":"./bin/sock-rpc-stats"},"version":"0.0.3","description":"Stats RPC server for Arma 3","scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"repository":{"type":"git","url":"git+https://bitbucket.org/micovery/sock-rpc-stats.git"},"dependencies":{"sock-rpc":"1.0.x","async":"0.9.x","mongodb":"1.4.x","mysql":"2.5.x","yargs":"1.3.x","util-logging":"0.0.x","cassandra-driver":"1.0.x","wait.for":"0.6.x","redis":"0.12.x","cradle":"0.6.x","json-stable-stringify":"1.0.0"},"author":{"name":"Miguel Mendoza"},"licenses":[{"type":"MIT","url":"https://bitbucket.org/micovery/sock-rpc-stats/raw/master/LICENSE"}],"devDependencies":{},"keywords":["Arma 3","mongoDB","couchDB","Redis","Cassandra","MySQL","stats","persistency"],"gitHead":"cc13426da59322d926bca7ba6621c34c5e739891","_id":"sock-rpc-stats@0.0.3","_shasum":"347e59333a7d32b0ff0c54b05d37269bd5c61207","_from":".","_npmVersion":"1.4.23","_npmUser":{"name":"micovery","email":"miguel@micovery.com"},"maintainers":[{"name":"micovery","email":"miguel@micovery.com"}],"dist":{"shasum":"347e59333a7d32b0ff0c54b05d37269bd5c61207","tarball":"https://registry.npmjs.org/sock-rpc-stats/-/sock-rpc-stats-0.0.3.tgz","integrity":"sha512-X8n1CbSNaJGxxqhJOuQqoy6RPNNq2VgbbSYjGulBnwjHw6a3Eoeub3o9vm/qbMU8881UBz84qz1OWdyDBZdLsg==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDhXQcGY5JTmMJerzg7qw9o1ChF5BvLkVaD6c1wZMIDJwIgRtcho44rnZqL3RJlz1rwYK/yCKiU87ycH85zH6RwVBc="}]}},"0.0.5":{"name":"sock-rpc-stats","main":"./lib/stats.js","bin":{"sock-rpc-stats":"./bin/sock-rpc-stats"},"version":"0.0.5","description":"Stats RPC server for Arma 3","scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"repository":{"type":"git","url":"git+https://bitbucket.org/micovery/sock-rpc-stats.git"},"dependencies":{"sock-rpc":"1.0.x","async":"0.9.x","mongodb":"1.4.x","mysql":"2.5.x","yargs":"1.3.x","util-logging":"0.0.x","cassandra-driver":"1.0.x","wait.for":"0.6.x","redis":"0.12.x","cradle":"0.6.x","json-stable-stringify":"1.0.0"},"author":{"name":"Miguel Mendoza"},"licenses":[{"type":"MIT","url":"https://bitbucket.org/micovery/sock-rpc-stats/raw/master/LICENSE"}],"devDependencies":{},"keywords":["Arma 3","mongoDB","couchDB","Redis","Cassandra","MySQL","stats","persistency"],"_id":"sock-rpc-stats@0.0.5","_shasum":"e0bc63ca5b54afdb879391383f8687c5d9542c82","_from":".","_npmVersion":"1.4.9","_npmUser":{"name":"micovery","email":"miguel@micovery.com"},"maintainers":[{"name":"micovery","email":"miguel@micovery.com"}],"dist":{"shasum":"e0bc63ca5b54afdb879391383f8687c5d9542c82","tarball":"https://registry.npmjs.org/sock-rpc-stats/-/sock-rpc-stats-0.0.5.tgz","integrity":"sha512-NP+PbCkWjHhBaBHaMnZtOVEA8tmwZsHjQ0WchJyxZVfcO76Ig41xn4R3sYSTq2VhljrkXmD0A2EVX3Uea20Eew==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCICqKOkylDyP6yHJMbnifRGKX0iz20mP5GNJ854QpoBU+AiEAqC8JLE08CnVpH4X7sxF/t6E1gtUIBL8sMdNk3lwiRPY="}]}},"0.0.6":{"name":"sock-rpc-stats","main":"./lib/stats.js","bin":{"sock-rpc-stats":"./bin/sock-rpc-stats"},"version":"0.0.6","description":"Stats RPC server for Arma 3","scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"repository":{"type":"git","url":"git+https://bitbucket.org/micovery/sock-rpc-stats.git"},"dependencies":{"sock-rpc":"1.0.x","async":"0.9.x","mongodb":"1.4.x","mysql":"2.5.x","yargs":"1.3.x","util-logging":"0.0.x","cassandra-driver":"1.0.x","wait.for":"0.6.x","redis":"0.12.x","cradle":"0.6.x","json-stable-stringify":"1.0.0"},"author":{"name":"Miguel Mendoza"},"licenses":[{"type":"MIT","url":"https://bitbucket.org/micovery/sock-rpc-stats/raw/master/LICENSE"}],"devDependencies":{},"keywords":["Arma 3","mongoDB","couchDB","Redis","Cassandra","MySQL","stats","persistency"],"_id":"sock-rpc-stats@0.0.6","_shasum":"28a355c4b02dd21032834b2c066c93363909ca07","_from":".","_npmVersion":"1.4.9","_npmUser":{"name":"micovery","email":"miguel@micovery.com"},"maintainers":[{"name":"micovery","email":"miguel@micovery.com"}],"dist":{"shasum":"28a355c4b02dd21032834b2c066c93363909ca07","tarball":"https://registry.npmjs.org/sock-rpc-stats/-/sock-rpc-stats-0.0.6.tgz","integrity":"sha512-ko+iZURwQX6G6DBahyC+Pn50vGJ3AvpvZtEx/KMCoK3ivlv1lq8nIV/fmHpP2tudkBsH7fLM4qXlCUV548W6bw==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIC70YuT8fb2Hp+UDeSc4Xp3B+KQ8vPsNPGAnDez8sfKAAiEA8+d2zIaBh2Xqeg9Jy73zBUM0rojcn9I+e2jgK+E5QkE="}]}},"0.0.7":{"name":"sock-rpc-stats","main":"./lib/stats.js","bin":{"sock-rpc-stats":"./bin/sock-rpc-stats"},"version":"0.0.7","description":"Stats RPC server for Arma 3","scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"repository":{"type":"git","url":"git+https://bitbucket.org/micovery/sock-rpc-stats.git"},"dependencies":{"sock-rpc":"1.0.x","async":"0.9.x","mongodb":"1.4.x","mysql":"2.5.x","yargs":"1.3.x","util-logging":"0.0.x","cassandra-driver":"1.0.x","wait.for":"0.6.x","redis":"0.12.x","cradle":"0.6.x","json-stable-stringify":"1.0.0"},"author":{"name":"Miguel Mendoza"},"licenses":[{"type":"MIT","url":"https://bitbucket.org/micovery/sock-rpc-stats/raw/master/LICENSE"}],"devDependencies":{},"keywords":["Arma 3","mongoDB","couchDB","Redis","Cassandra","MySQL","stats","persistency"],"_id":"sock-rpc-stats@0.0.7","_shasum":"8f502790f0f4c5a09919ed63fa6d0462137b76db","_from":".","_npmVersion":"1.4.9","_npmUser":{"name":"micovery","email":"miguel@micovery.com"},"maintainers":[{"name":"micovery","email":"miguel@micovery.com"}],"dist":{"shasum":"8f502790f0f4c5a09919ed63fa6d0462137b76db","tarball":"https://registry.npmjs.org/sock-rpc-stats/-/sock-rpc-stats-0.0.7.tgz","integrity":"sha512-qsOMqbY0+EXKicWaZnoBGh879NsJC8A+czylF/02dOOjt/P++Iwu1WWTPPrsxK6NrzXU5wMj2MH9PwTWZaqPNA==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIA8sCg+6fbsy1l281Oe7O2mW/zoHXyhcTDTTmiVOnAHRAiBOvAJ7mc9SebXZ+kFWH0LExrBotdTTD18hBy3Cy9mPOg=="}]}},"0.0.8":{"name":"sock-rpc-stats","main":"./lib/stats.js","bin":{"sock-rpc-stats":"./bin/sock-rpc-stats"},"version":"0.0.8","description":"Stats RPC server for Arma 3","scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"repository":{"type":"git","url":"git+https://bitbucket.org/micovery/sock-rpc-stats.git"},"dependencies":{"sock-rpc":"1.0.x","async":"0.9.x","mongodb":"1.4.x","mysql":"2.5.x","yargs":"1.3.x","util-logging":"0.0.x","cassandra-driver":"1.0.x","wait.for":"0.6.x","redis":"0.12.x","cradle":"0.6.x","json-stable-stringify":"1.0.0"},"author":{"name":"Miguel Mendoza"},"licenses":[{"type":"MIT","url":"https://bitbucket.org/micovery/sock-rpc-stats/raw/master/LICENSE"}],"devDependencies":{},"keywords":["Arma 3","mongoDB","couchDB","Redis","Cassandra","MySQL","stats","persistency"],"_id":"sock-rpc-stats@0.0.8","_shasum":"c7d1c1936f7ebecaf8e62d718664e1a041c84248","_from":".","_npmVersion":"1.4.28","_npmUser":{"name":"micovery","email":"miguel@micovery.com"},"maintainers":[{"name":"micovery","email":"miguel@micovery.com"}],"dist":{"shasum":"c7d1c1936f7ebecaf8e62d718664e1a041c84248","tarball":"https://registry.npmjs.org/sock-rpc-stats/-/sock-rpc-stats-0.0.8.tgz","integrity":"sha512-GEJkZE4xkt2gL5Pav6VJZf6FmVxE+sY9isttqxoo9QgTVpZqhcan+DyP8/6kwN7VFwbziSu8n22yab6raQMXfA==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIGIbNUM1k3FWZ5QdX1gUJOfBPm7LnHxHQ83I+WL65JA/AiEAwxZAcq0Y3GtDEjqa8iI+lH5PDDJQpZL8PbW5Lppr30w="}]}},"0.0.9":{"name":"sock-rpc-stats","main":"./lib/stats.js","bin":{"sock-rpc-stats":"./bin/sock-rpc-stats"},"version":"0.0.9","description":"Stats RPC server for Arma 3","scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"repository":{"type":"git","url":"git+https://bitbucket.org/micovery/sock-rpc-stats.git"},"dependencies":{"sock-rpc":"1.0.1","async":"0.9.x","mongodb":"1.4.x","mysql":"2.5.x","yargs":"1.3.x","util-logging":"0.0.x","cassandra-driver":"1.0.x","wait.for":"0.6.x","redis":"0.12.x","cradle":"0.6.x","json-stable-stringify":"1.0.0","lodash":"2.4.x"},"author":{"name":"Miguel Mendoza"},"licenses":[{"type":"MIT","url":"https://bitbucket.org/micovery/sock-rpc-stats/raw/master/LICENSE"}],"devDependencies":{},"keywords":["Arma 3","mongoDB","couchDB","Redis","Cassandra","MySQL","stats","persistency"],"_id":"sock-rpc-stats@0.0.9","_shasum":"7af89ee9c5e1abbc38a810511d643b5017a24714","_from":".","_npmVersion":"1.4.28","_npmUser":{"name":"micovery","email":"miguel@micovery.com"},"maintainers":[{"name":"micovery","email":"miguel@micovery.com"}],"dist":{"shasum":"7af89ee9c5e1abbc38a810511d643b5017a24714","tarball":"https://registry.npmjs.org/sock-rpc-stats/-/sock-rpc-stats-0.0.9.tgz","integrity":"sha512-R7ZF2/ekqgJPds8ppAu+D+DowgXjO+7T6JRdFGZtWzJJhzL2TYatbip/kFFSj9uxT/9B75VXhDY2Jtu9yABdLw==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCBLcZ6dDQzW2L4k7sYAyWmKoviGRE1Vl5kBeJ8yjLL2AIgIbEotee/cqOlvODqRW+tziQq4aXYuARtPIgbCZgT7X0="}]}},"0.0.10":{"name":"sock-rpc-stats","main":"./index.js","bin":{"sock-rpc-stats":"./bin/sock-rpc-stats"},"version":"0.0.10","description":"Stats RPC server for Arma 3","scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"repository":{"type":"git","url":"git+https://bitbucket.org/micovery/sock-rpc-stats.git"},"dependencies":{"sock-rpc":"1.0.3","async":"0.9.x","mongodb":"1.4.x","mysql":"2.5.x","yargs":"1.3.x","util-logging":"0.0.x","cassandra-driver":"1.0.x","wait.for":"0.6.x","redis":"0.12.x","cradle":"0.6.x","json-stable-stringify":"1.0.0","lodash":"2.4.x"},"author":{"name":"Miguel Mendoza"},"licenses":[{"type":"MIT","url":"https://bitbucket.org/micovery/sock-rpc-stats/raw/master/LICENSE"}],"devDependencies":{},"keywords":["Arma 3","mongoDB","couchDB","Redis","Cassandra","MySQL","stats","persistency"],"_id":"sock-rpc-stats@0.0.10","_shasum":"131ebd9b079c88693069ef578b4ade97e070e54b","_from":".","_npmVersion":"1.4.28","_npmUser":{"name":"micovery","email":"miguel@micovery.com"},"maintainers":[{"name":"micovery","email":"miguel@micovery.com"}],"dist":{"shasum":"131ebd9b079c88693069ef578b4ade97e070e54b","tarball":"https://registry.npmjs.org/sock-rpc-stats/-/sock-rpc-stats-0.0.10.tgz","integrity":"sha512-Nvgs43bXfUlf8QaRrO/MgIyvw3VXn8lErZbxAt6EFdZMamBU2VSPq7H3JPGB2rfTieydcYB1QNQK421wHVXQ3Q==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCwjmwELKMv7V8EJjKbC2cCrn0qOQOu3tDAxB6q9Xa3+wIhAM54ztgXRUspjLGERwb7VRlruK8MMCq930ea+b9GpvrE"}]}},"0.0.11":{"name":"sock-rpc-stats","main":"./index.js","bin":{"sock-rpc-stats":"./bin/sock-rpc-stats"},"version":"0.0.11","description":"Stats RPC server for Arma 3","scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"repository":{"type":"git","url":"git+https://bitbucket.org/micovery/sock-rpc-stats.git"},"dependencies":{"sock-rpc":"1.0.4","async":"0.9.x","mongodb":"1.4.x","mysql":"2.5.x","yargs":"1.3.x","util-logging":"0.0.x","cassandra-driver":"1.0.x","wait.for":"0.6.x","redis":"0.12.x","cradle":"0.6.x","json-stable-stringify":"1.0.0","lodash":"2.4.x"},"author":{"name":"Miguel Mendoza"},"licenses":[{"type":"MIT","url":"https://bitbucket.org/micovery/sock-rpc-stats/raw/master/LICENSE"}],"devDependencies":{},"keywords":["Arma 3","mongoDB","couchDB","Redis","Cassandra","MySQL","stats","persistency"],"_id":"sock-rpc-stats@0.0.11","_shasum":"d13385a602c77dae1888f34fcc2d513bcb4eaae6","_from":".","_npmVersion":"1.4.28","_npmUser":{"name":"micovery","email":"miguel@micovery.com"},"maintainers":[{"name":"micovery","email":"miguel@micovery.com"}],"dist":{"shasum":"d13385a602c77dae1888f34fcc2d513bcb4eaae6","tarball":"https://registry.npmjs.org/sock-rpc-stats/-/sock-rpc-stats-0.0.11.tgz","integrity":"sha512-fGyzezbPpDciLdynShzctR0OIA8COcGViihUhsMw9ezFeQJwMTPnI3EmxkpxT5CXG4FFWcwqOfjHYOjbQjWCwA==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCi8RqoJ6b3GxryCitE9OwJicHC3CopEt8UE7raq6c1vwIhALHV+Gt1rCp9LGP8ybruM2uImMFm/xb0cP+7A3k6AY9U"}]}},"0.0.12":{"name":"sock-rpc-stats","main":"./index.js","bin":{"sock-rpc-stats":"./bin/sock-rpc-stats"},"version":"0.0.12","description":"Stats RPC server for Arma 3","scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"repository":{"type":"git","url":"git+https://bitbucket.org/micovery/sock-rpc-stats.git"},"dependencies":{"sock-rpc":"1.0.5","async":"0.9.x","mongodb":"1.4.x","mysql":"2.5.x","yargs":"1.3.x","util-logging":"0.0.x","cassandra-driver":"1.0.x","wait.for":"0.6.x","redis":"0.12.x","cradle":"0.6.x","json-stable-stringify":"1.0.0","lodash":"2.4.x"},"author":{"name":"Miguel Mendoza"},"licenses":[{"type":"MIT","url":"https://bitbucket.org/micovery/sock-rpc-stats/raw/master/LICENSE"}],"devDependencies":{},"keywords":["Arma 3","mongoDB","couchDB","Redis","Cassandra","MySQL","stats","persistency"],"_id":"sock-rpc-stats@0.0.12","_shasum":"9821f981351d972eb51bda81772e4656fb07d0f6","_from":".","_npmVersion":"1.4.28","_npmUser":{"name":"micovery","email":"miguel@micovery.com"},"maintainers":[{"name":"micovery","email":"miguel@micovery.com"}],"dist":{"shasum":"9821f981351d972eb51bda81772e4656fb07d0f6","tarball":"https://registry.npmjs.org/sock-rpc-stats/-/sock-rpc-stats-0.0.12.tgz","integrity":"sha512-olTFaO5FQhvGb/kz4cWb6vjNm/FpqSMydKZ5GTwrmeRJb3CV9caYEU+9hgOAzPaq/uttIkbJjL8zbl9vEiWY3g==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIFqTeYqhK+8uxNsGIQWGexlClIPIS2Ys73RYPFr5wFWIAiEAoGpdViBNLyjhHxk4QPQFwOIexe+PswtTl0kMgzlnbsQ="}]}},"0.0.13":{"name":"sock-rpc-stats","main":"./index.js","bin":{"sock-rpc-stats":"./bin/sock-rpc-stats"},"version":"0.0.13","description":"Stats RPC server for Arma 3","scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"repository":{"type":"git","url":"git+https://bitbucket.org/micovery/sock-rpc-stats.git"},"dependencies":{"sock-rpc":"1.0.6","async":"0.9.x","mongodb":"1.4.x","mysql":"2.5.x","yargs":"1.3.x","util-logging":"0.0.x","cassandra-driver":"1.0.x","wait.for":"0.6.x","redis":"0.12.x","cradle":"0.6.x","json-stable-stringify":"1.0.0","lodash":"2.4.x"},"author":{"name":"Miguel Mendoza"},"licenses":[{"type":"MIT","url":"https://bitbucket.org/micovery/sock-rpc-stats/raw/master/LICENSE"}],"devDependencies":{},"keywords":["Arma 3","mongoDB","couchDB","Redis","Cassandra","MySQL","stats","persistency"],"_id":"sock-rpc-stats@0.0.13","_shasum":"b7f68f017bc39e38c8ce6b3b5022044be32b6c2c","_from":".","_npmVersion":"1.4.28","_npmUser":{"name":"micovery","email":"miguel@micovery.com"},"maintainers":[{"name":"micovery","email":"miguel@micovery.com"}],"dist":{"shasum":"b7f68f017bc39e38c8ce6b3b5022044be32b6c2c","tarball":"https://registry.npmjs.org/sock-rpc-stats/-/sock-rpc-stats-0.0.13.tgz","integrity":"sha512-1GfCDq2qQ1l2HwH86epGMJaAsfRk+s5HZyZPQgemFJiArHxTOYac8jybaCQqI9RbVZS+wi3HOArJKkGqHrBa+g==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIFYAASFIyfjH6ZBEIV8O3ETR5vlkEZsdSUJivYIrwq+TAiBjkoDk6lOp1EZsc2OqedqqDXcEkEF3xCAJb7JeDYbvoQ=="}]}},"0.0.15":{"name":"sock-rpc-stats","main":"./index.js","bin":{"sock-rpc-stats":"./bin/sock-rpc-stats"},"engines":{"node":">=0.11.6"},"version":"0.0.15","description":"Stats RPC server for Arma 3","scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"repository":{"type":"git","url":"git+https://bitbucket.org/micovery/sock-rpc-stats.git"},"dependencies":{"sock-rpc":"1.0.7","async":"0.9.x","mysql":"2.5.x","yargs":"1.3.x","util-logging":"0.0.x","cassandra-driver":"1.0.x","wait.for-es6":"0.1.0","redis":"0.12.x","cradle":"0.6.x","json-stable-stringify":"1.0.0","lodash":"2.4.x"},"author":{"name":"Miguel Mendoza"},"licenses":[{"type":"MIT","url":"https://bitbucket.org/micovery/sock-rpc-stats/raw/master/LICENSE"}],"devDependencies":{},"keywords":["Arma 3","couchDB","Redis","Cassandra","MySQL","stats","persistency"],"_id":"sock-rpc-stats@0.0.15","_shasum":"124405d434d25c1eb9c9a57b9783824f4d2bcd60","_from":".","_npmVersion":"1.4.28","_npmUser":{"name":"micovery","email":"miguel@micovery.com"},"maintainers":[{"name":"micovery","email":"miguel@micovery.com"}],"dist":{"shasum":"124405d434d25c1eb9c9a57b9783824f4d2bcd60","tarball":"https://registry.npmjs.org/sock-rpc-stats/-/sock-rpc-stats-0.0.15.tgz","integrity":"sha512-1NpdQozavdhjo5zGIOKz3FF1gSYXgWv3og0EOsiadk3c3vKHdzJSbpuxQOOabZWKghmjC2tgD0MGAkOKMi2hNA==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIAs2TQ2GfePRumuuZHwfCJNVyE1cv2KcZnc1e4c8AQCiAiEA7/SuECAwssoR13E9Sum3KlZOEdA3FYJJL2SX8mNgAfw="}]}},"0.0.16":{"name":"sock-rpc-stats","main":"./index.js","bin":{"sock-rpc-stats":"./bin/sock-rpc-stats"},"engines":{"node":">=0.11.6"},"version":"0.0.16","description":"Stats RPC server for Arma 3","scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"repository":{"type":"git","url":"git+https://bitbucket.org/micovery/sock-rpc-stats.git"},"dependencies":{"sock-rpc":"1.0.8","async":"0.9.x","mysql":"2.5.x","yargs":"1.3.x","util-logging":"0.0.x","cassandra-driver":"1.0.x","wait.for-es6":"0.1.0","redis":"0.12.x","cradle":"0.6.x","json-stable-stringify":"1.0.0","lodash":"2.4.x"},"author":{"name":"Miguel Mendoza"},"licenses":[{"type":"MIT","url":"https://bitbucket.org/micovery/sock-rpc-stats/raw/master/LICENSE"}],"devDependencies":{},"keywords":["Arma 3","couchDB","Redis","Cassandra","MySQL","stats","persistency"],"homepage":"https://bitbucket.org/micovery/sock-rpc-stats#readme","_id":"sock-rpc-stats@0.0.16","_shasum":"09f8623910eb496d19f22142c70dbfe7f61cf1a8","_from":".","_npmVersion":"2.14.4","_nodeVersion":"4.1.2","_npmUser":{"name":"micovery","email":"miguel@micovery.com"},"maintainers":[{"name":"micovery","email":"miguel@micovery.com"}],"dist":{"shasum":"09f8623910eb496d19f22142c70dbfe7f61cf1a8","tarball":"https://registry.npmjs.org/sock-rpc-stats/-/sock-rpc-stats-0.0.16.tgz","integrity":"sha512-kJDetg67yHaF/HvyiqzHYHVdY9AjsTTQrgqVsgxdWFG6qXF3jfWrNqEI/GT/Fd3ejQEtXr6cwQ5+kt00LMV+OQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCRx9yWtqRI7g3hRKDKB9rjyXA/Av0LPj1RSAWIWc+5XwIgZ2L1wm0f18FGePjTeqOKW2ZNqYGUn4/af+N/Zt8nQts="}]}}},"readme":"[TOC]\n\n# sock-rpc-stats #\n* This a Node.js package that implements a *key-value* store server for use with Arma 3 [sock](https://bitbucket.org/micovery/sock.dll) extension.  \n\n\n## Changelog ##\n  * 0.0.16\n    * Update sock-rpc dependency to v1.0.8\n  * 0.0.15\n    * Require ES6 Generators (node >=0.11.6)\n    * Remove dependency on wait.for (fibers)\n  * 0.0.14\n    * Drop support for MongoDB\n    * Update sock-rpc dependency to v1.0.7\n  * 0.0.13\n    * Update sock-rpc dependency to v1.0.6\n  * 0.0.12\n    * Update sock-rpc dependency to v1.0.5  \n  * 0.0.11\n    * Update sock-rpc dependency to v1.0.4     \n  * 0.0.10\n    * Allow keys(), and get() commands to get list of all active scopes through the RPC API   \n    * Add Client class for communicating with remote sock-rpc-stats servers  \n  * 0.0.9\n    * Enhancement: Add support for commands: merge, keys, and count\n  * 0.0.8\n    * Enhancement: Add support for wiping all keys in a scope\n  * 0.0.5\n    * Defect: Fix major problem where the interval function was always disabled\n    * Defect: Fix issue with default values 0, and empty string, being treated as undefined\n  * 0.0.4 \n    * Enhancement: add support for pop, push, shift, and unshift array operations\n    * Enhancement: add support for dot notation on keys\n  * 0.0.3 \n    * Defect: Fixed issue with line endings for Linux\n  * 0.0.2  \n    * Enhancement: meta function added for viewing scope meta-data \n  * 0.0.1 - Initial release\n\n\n### The Key-Value Store ###\n\nThe *key-value* store is essentially a big hash-map, with smaller nested hash-maps (referred to as *scopes*).  \n\n* keys are always strings.\n* values can be strings, numbers, null, arrays, or objects.  \n  \n.  \nHere is a sample view of the *key-value* store with 2 scopes (i.e. ```\"player1_id\"```, and ```\"player2_id\"```):\n```javascript\n{\n  \"player1_id\" : {\n    \"name\": \"player1\",\n    \"money\":  1000\n  },\n  \"player2_id\" : {\n    \"name\": \"player2\",\n    \"money\": 3000\n  }\n}\n```\n\n### How to Use ###\n```sock-rpc-stats --url=<string> [--container=<string>] [-i=<interval>]  [--host=<listen_host>] [--port=<listen_port>]  [--help]```\n \n### Supported storage systems, and connection URL (```--url```) syntax###\n* File System                 --url=file://path/to/directory\n* MySQL       (>= 5.5.38)     --url=mysql://user:pass@host:port/database\n* Cassandra   (>= 1.2)        --url=cassandra://user:pass@host1,host2,etc:port/keySpace\n* CouchDB     (>= 1.5.0)      --url=http://user:pass@host:port/database\n* Redis       (>= 2.8.4)      --url=redis://:pass@host:port/database  \n  \n###Specifying database container (```--container```)###\nFor some storage systems, a container name is needed. By default the value \"scopes\" is used as the container name. \n\n* For File System, this is ignored.\n* For MySQL, this is the name used for the SQL table.\n* For Cassandra, this is the name used for the CQL3 table.\n* For CouchDB, this is ignored\n* For Redis, this the prefix used for the hash keys  \n\nYou do not need to create the container, it is automatically created if it does not exist. (For MySQL, the username used for connecting must have ```CREATE TABLE``` permission).\n\n### In-Memory read/write and save ```--interval``` ###\nAll active *scope* data is kept in memory. A *scope* is said to be **active** once it has been read from the storage system. After that point, all the read/write operations that are done through the RPC API only affect the data that is in-memory. This is where ```--interval``` comes in. It allows you to specify how often (default is every 60 seconds) the data from memory is saved to the storage system.\n\nNote that not all *scopes* might be saved on every iteration. The server only saves the *scopes* that have been modified since the last save operation.\n\n### Automatic backup (```--backup```) ###\n\nThis option is set to ```true``` by default. Every time the data for a *scope* is read from the storage system, it is automatically backed-up under a new *scope*. For example if the original *scope* name is ```\"player1\"```, the backed-up *scope* name would be:  \n```javascript \n\"player1\" + (new Date()).getTime() + \".bak\"\n```\n\nThis might appear excessive, to create backups every time a *scope* is read from the database. However, note that once data is read from the storage system into memory, then it's not read back again.\n\n\n### Other options ###\n* ```--repl```           enable Node.js Read-Eval-Print-Loop(REPL)           [default: false]\n* ```--host```           IP address to listen on for client stats requests   [default: \"localhost\"]\n* ```--port```           port number to listen on for client stats requests  [default: 1337]\n  \n\n### RPC API  - Core functions###\nThese are the functions for setting and getting *key-value* pairs. When you set or get a *key-value* pair, you always do it in the context of a specific scope:  \n\n* **get**(\"scope\")  \n  \n    This function allows the client to get all the *key-values* pairs within the specified *scope*.  \n  \n    Example client SQF call:  \n  \n```javascript\n    //returns {[[\"key1\", \"value1\"], [\"key2\", \"value2\"], ...]} on success, or nil on failure\n    [(getPlayerUID player)] call stats_get;\n```  \n  \n* **get**(\"scope\", \"key1\", *default*)  \n  \n    *  *default* (optional) - Value to return, if the key is not found  \n  \n    This function allows the client to get the value of a *key* within a specific *scope*.  \n    \n    Example client SQF call:  \n  \n```javascript\n    //returns the value (or default) associated with the key \n    [(getPlayerUID player), \"name\"] call stats_get;  \n```  \n* **get**(\"scope\", [\"key1\", *default*], ...)  \n    \n    *  *default* (optional) - Value to use, if the key is not found  \n  \n    This function allows the client to get the value of one or more keys within a specific *scope*.  \n\n    Example client SQF call:  \n    \n```javascript\n    //returns [[\"key1\", \"value1\"], [\"key2\", \"value2\"], ...] on success, or nil on failure\n    [(getPlayerUID player), [\"key1\", \"default1\"], [\"key2\", \"default2\"]] call stats_get;  \n```  \n* **set**(\"scope\", \"key1\", \"value1\")  \n    This function allows the client to set a *key-value* pair within a specific *scope*.  \n    \n    Example client SQF call:  \n  \n```javascript\n   //returns true on success, false on failure\n    [(getPlayerUID player), \"name\", (getPlayerName player)] call stats_set;\n```  \n* **set**(\"scope\", [\"key1\", \"value1\"], ...)  \n    \n    This function allows the client to set one or more *key-value* pairs within a specific *scope*.  \n    \n    Example client SQF call:  \n    \n```javascript\n    //returns true on success, or false on failure\n    [(getPlayerUID player), [\"key1\", \"value1\"], [\"key2\", \"value2\"]] call stats_set;\n```  \n* **flush**(\"scope\",...)  \n    \n    This function allows the client to flush one or more *scopes* to the database. Once flushed, the in-memory data is saved, and the *scope* is removed from memory.  \n  \n    Example client SQF call:  \n    \n```javascript\n    //returns number of scopes that were saved, or nil on failure\n    [(getPlayerUID player)] call stats_flush;\n```\n* **wipe**(\"scope\")  \n    \n    This function allows the client to wipe all the keys within a specific *scope*.\n  \n    Example client SQF call:  \n    \n```javascript\n    //returns true on success, false on failure\n    [(getPlayerUID player)] call stats_wipe;\n```\n* **count**(\"scope\")  \n  \n    This function allows the client to count the child keys within a specific *scope*.  \n    \n    Example client SQF call:  \n  \n```javascript\n    //returns the count of child keys \n    [(getPlayerUID player)] call stats_count;  \n```  \n\n* **count**(\"scope\", \"key1\", *default*)  \n  \n    *  *default* (optional) - Value to return, if the key is not found  \n  \n    This function allows the client to count the child keys at the specified *key* within a specific *scope*.  \n    \n    Example client SQF call:  \n  \n```javascript\n    //returns the count (or default) of child keys \n    [(getPlayerUID player), \"name\"] call stats_count;  \n```  \n* **count**(\"scope\", [\"key1\", *default*], ...)  \n    \n    *  *default* (optional) - Value to use, if the key is not found  \n  \n    This function allows the client to count the child keys at the specified keys within a specific *scope*.  \n\n    Example client SQF call:  \n    \n```javascript\n    //returns [[\"key1\", 3], [\"key2\", -1], ...] on success, or nil on failure\n    [(getPlayerUID player), [\"key1\", -1], [\"key2\", -1]] call stats_count;  \n```  \n* **keys**(\"scope\")  \n  \n    This function allows the client to retrieve the child keys within a specific *scope*.  \n    \n    Example client SQF call:  \n  \n```javascript\n    //returns [\"key1\", \"key2\",...] \n    [(getPlayerUID player)] call stats_keys;  \n```  \n\n* **keys**(\"scope\", \"key1\", *default*)  \n  \n    *  *default* (optional) - Value to return, if the key is not found  \n  \n    This function allows the client to retrieve the child keys at the specified *key* within a specific *scope*.  \n    \n    Example client SQF call:  \n  \n```javascript\n    //returns [\"a\", \"b\",..]  or default value\n    [(getPlayerUID player), \"name\"] call stats_keys;  \n```  \n* **keys**(\"scope\", [\"key1\", *default*], ...)  \n    \n    *  *default* (optional) - Value to use, if the key is not found  \n  \n    This function allows the client to retrieve the child keys at the specified keys within a specific *scope*.  \n\n    Example client SQF call:  \n    \n```javascript\n    //returns [[\"key1\", [\"a\", \"b\"]], [\"key2\", nil], ...] on success, or nil on failure\n    [(getPlayerUID player), [\"key1\", []], [\"key2\", nil]] call stats_keys;  \n```  \n\n* **merge**(\"scope\", \"key\", *value*)  \n  \n    This function allows the client to merge a value (usually a hash) with the existing value at the specified *key* within a specific *scope*.  \n    \n    Example client SQF call:  \n  \n```javascript\n    /*\n     * returns true on success, false on failure (e.g. if the key does not exist)\n     * Note the usage of the SQF sock_hash function to create a hash/object since SQF has no native hash data type.\n     */\n    private[\"_hash1\"];\n    _hash1 = [\n               [\"a\", 1],\n               [\"b\", 2]\n             ] call sock_hash;\n\n    [(getPlayerUID player), \"key1\", _hash1] call stats_merge;  \n```  \n* **merge**(\"scope\", [\"key\", *value*], ...)  \n    \n    This function allows the client to merge one or more values (usually hashes) with the existing values at the specified keys within a specific *scope*.  \n\n    Example client SQF call:  \n    \n```javascript\n    //returns true on success, false on failure\n    private[\"_hash1\", \"_hash2\"];\n    _hash1 = [\n               [\"a\", 1],\n               [\"b\", 2]\n             ] call sock_hash;\n    _hash2 = [\n               [\"c\", 3],\n               [\"d\", 4]\n             ] call sock_hash;\n\n    [(getPlayerUID player), [\"key1\",_hash1], [\"key2\", _hash2]] call stats_merge;\n```  \n### RPC API - Array-only manipulation functions ###\n\n* **pop**(\"scope\", \"key1\", *default*)  \n  \n    *  *default* (optional) - Value to return, if the key is not found  \n  \n    This function allows the client to pop the last element of the array at the specified *key* within a specific *scope*.  \n    \n    Example client SQF call:  \n  \n```javascript\n    //returns the value (or default) associated with the key \n    [(getPlayerUID player), \"name\"] call stats_pop;  \n```  \n* **pop**(\"scope\", [\"key1\", *default*], ...)  \n    \n    *  *default* (optional) - Value to use, if the key is not found  \n  \n    This function allows the client to pop one or more values of arrays at the specified keys within a specific *scope*.  \n\n    Example client SQF call:  \n    \n```javascript\n    //returns [[\"key1\", \"value1\"], [\"key2\", \"value2\"], ...] on success, or nil on failure\n    [(getPlayerUID player), [\"key1\", \"default1\"], [\"key2\", \"default2\"]] call stats_pop;  \n```  \n* **shift**(\"scope\", \"key1\", *default*)  \n  \n    *  *default* (optional) - Value to return, if the key is not found  \n  \n    This function allows the client to shift the first element of the array at the specified *key* within a specific *scope*.  \n    \n    Example client SQF call:  \n  \n```javascript\n    //returns the value (or default) associated with the key \n    [(getPlayerUID player), \"name\"] call stats_shift;  \n```  \n* **shift**(\"scope\", [\"key1\", *default*], ...)  \n    \n    *  *default* (optional) - Value to use, if the key is not found  \n  \n    This function allows the client to shift one or more values of arrays at the specified keys within a specific *scope*.  \n\n    Example client SQF call:  \n    \n```javascript\n    //returns [[\"key1\", \"value1\"], [\"key2\", \"value2\"], ...] on success, or nil on failure\n    [(getPlayerUID player), [\"key1\", \"default1\"], [\"key2\", \"default2\"]] call stats_shift;  \n```  \n* **push**(\"scope\", \"key1\", \"value1\")  \n    \n    This function allows the client to push a a value into the array at the specified key within a given *scope*.  \n    \n    Example client SQF call:  \n  \n```javascript\n   //returns true on success, false on failure\n    [(getPlayerUID player), \"name\", (getPlayerName player)] call stats_push;\n```  \n* **push**(\"scope\", [\"key1\", \"value1\"], ...)  \n    \n    This function allows the client to push one or more values into the arrays at specified keys within the given *scope*.  \n    \n    Example client SQF call:  \n    \n```javascript\n    //returns true on success, or false on failure\n    [(getPlayerUID player), [\"key1\", \"value1\"], [\"key2\", \"value2\"]] call stats_push;\n```  \n* **unshift**(\"scope\", \"key1\", \"value1\")  \n    \n    This function allows the client to unshift a a value into the array at the specified key within a given *scope*.  \n    \n    Example client SQF call:  \n  \n```javascript\n   //returns true on success, false on failure\n    [(getPlayerUID player), \"name\", (getPlayerName player)] call stats_unshift;\n```  \n* **unshift**(\"scope\", [\"key1\", \"value1\"], ...)  \n    \n    This function allows the client to unshift one or more values into the arrays at the specified keys within the given *scope*.  \n    \n    Example client SQF call:  \n    \n```javascript\n    //returns true on success, or false on failure\n    [(getPlayerUID player), [\"key1\", \"value1\"], [\"key2\", \"value2\"]] call stats_unshift;\n```  \n\n\n\n### REPL (Read-Eval-Print Loop)  ###\nWhen starting the server, you can use the ```--repl``` parameter. This will bring up Node.js REPL augmented with the same functions that are available in the RPC API. This is useful for browsing and manipulating the data store.\n```javascript\n> help()\n\n  // Get the names of all active scopes\n  get();\n\n  // Get all keys from a specific scope\n  get(\"scope\");\n\n  // Get the value of a key from a specific scope\n  get(\"scope\", \"key1\", default);\n  \n  // Get the value of one or more keys from a specific scope\n  get(\"scope\", [\"key1\", default], ...);\n\n  // Update/Insert the given key-value pair within a specific scope\n  set(\"scope\", \"key\", value);\n\n  // Update/Insert one or more key-value pairs within a specific scope\n  set(\"scope\", [\"key\", value], ...);\n\n  // remove, and return the last element of the array at the specified key\n  pop(\"scope\", \"key1\", default);\n\n  // remove, and return the last element of one or more arrays at the specified keys\n  pop(\"scope\", [\"key1\", default], ...);     \n\n  // remove, and return the first element the array at the specified key\n  shift(\"scope\", \"key1\", default);\n\n  // remove, and return the first element of one or more arrays\n  shift(\"scope\", [\"key1\", default], ...);\n\n  // count the number of child keys within the specified scope\n  count(\"scope\");\n\n  // count the number of child keys within the specified key\n  count(\"scope\", \"key1\", default);\n\n  // count the number of child keys for one or more specified keys   \n  count(\"scope\", [\"key1\", default], ...);\n\n  // get an array with the names of child keys within the specified scope\n  keys(\"scope\");\n\n  // get an array with the names of child keys within the specified key\n  keys(\"scope\", \"key1\", default);\n\n  // get an array with the names of child keys, for one ore more specified keys\n  keys(\"scope\", [\"key1\", default], ...);\n\n  // append the value to the end of the array at the specified key\n  push(\"scope\", \"key1\", value);\n\n  // append the one or more values to the end of the arrays at the specified keys\n  push(\"scope\", [\"key1\", value], ...);\n\n  // prepend the value to the beginning of the array at the specified key\n  unshift(\"scope\", \"key1\", value);\n\n  // prepend the one or more values to the beginning of the arrays at the specified keys\n  unshift(\"scope\", [\"key1\", value], ...); \n\n  // merges the value with the data at the specified key\n  merge(\"scope\", \"key1\", value);\n\n  // merge the one or more values with the data at the specified keys\n  merge(\"scope\", [\"key1\", value], ...);\n\n  // Save one or more scopes, and delete them from memory\n  flush(\"scope\", ...);\n\n  // Wipes all the keys of a specific scope\n  wipe(\"scope\");\n\n  // Get meta-data for a specific active scope\n  meta(\"scope\");\n\n  // Show help for all sections\n  help();\n\n  // Show help for specific sections\n  help(\"section\", ...);\n```\n\nNote that, unlike the RPC API, when using the REPL, all write operations are immediately sent to the storage system.","maintainers":[{"name":"micovery","email":"miguel@micovery.com"}],"time":{"modified":"2022-06-26T21:51:57.338Z","created":"2014-10-02T03:13:00.907Z","0.0.1":"2014-10-02T03:13:00.907Z","0.0.2":"2014-10-02T04:04:26.673Z","0.0.3":"2014-10-02T04:49:28.682Z","0.0.5":"2014-10-12T04:14:14.016Z","0.0.6":"2014-10-19T10:13:54.269Z","0.0.7":"2014-10-19T10:31:11.073Z","0.0.8":"2014-10-20T04:42:12.554Z","0.0.9":"2014-10-22T08:52:24.862Z","0.0.10":"2014-10-24T11:59:36.864Z","0.0.11":"2014-10-26T01:00:53.111Z","0.0.12":"2014-11-02T00:31:21.793Z","0.0.13":"2015-01-23T22:30:07.624Z","0.0.15":"2015-10-11T23:55:08.781Z","0.0.16":"2015-10-12T03:13:04.790Z"},"keywords":["Arma 3","couchDB","Redis","Cassandra","MySQL","stats","persistency"],"repository":{"type":"git","url":"git+https://bitbucket.org/micovery/sock-rpc-stats.git"},"author":{"name":"Miguel Mendoza"},"readmeFilename":"README.md","homepage":"https://bitbucket.org/micovery/sock-rpc-stats#readme","users":{"armyf35":true,"tinboye":true}}