{"_id":"@observertc/sfu-monitor-js","_rev":"51-4b307d948ec14ab1ecf7130f32d90366","name":"@observertc/sfu-monitor-js","dist-tags":{"develop-200-rc":"2.0.1-4c0288d.0","latest":"2.0.3"},"versions":{"1.0.0-beta.20":{"name":"@observertc/sfu-monitor-js","version":"1.0.0-beta.20","keywords":["webrtc","getStats","observertc","sfu","integration"],"author":{"name":"Balazs Kreith"},"license":"Apache-2.0","_id":"@observertc/sfu-monitor-js@1.0.0-beta.20","maintainers":[{"name":"pallab.gain","email":"pallab.gain@gmail.com"},{"name":"balazskreith","email":"balazs.kreith@gmail.com"}],"homepage":"https://github.com/observertc/sfu-monitor-js#readme","bugs":{"url":"https://github.com/observertc/sfu-monitor-js/issues"},"dist":{"shasum":"698c2e96461188e6e5b1643cb5758b092ab424fb","tarball":"https://registry.npmjs.org/@observertc/sfu-monitor-js/-/sfu-monitor-js-1.0.0-beta.20.tgz","fileCount":205,"integrity":"sha512-cXCwTyL8RBGtvc9SlVweq7sWQXsWvrPcxSvH73L1VVlDQ/hcB9aR+rqsbUePg9omaQIiLyvRRgY5HvvzKjL+NA==","signatures":[{"sig":"MEQCIA9hwJDTs5tEW+aiIcCVdBymQTR4QCrvU0Zwsrbe/j2NAiACQuNsKSj84Q1x64GGXnKTMqxGkThor9BbKbKvlS0hkw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":1145096,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiUX7GACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmrJyg/9Ht5ZDnzF5r8/5vHCRvv5rH9IuP2MOymm490+PY1SUk6qiQUQ\r\nUXDfsj0px2cUkjHZDcp8U5hoJ0MOT+824+cZ3E4d+xPHuRaIm0ogGsQW3C7U\r\nmY8CV/Bjua3e+A6B1WMJzHNMXMUavAeBO1UHbIIoSz9pd6Kc4pqDLx4wtAOC\r\nJfnW/zfDDBMQ5sdcnNoBBcdDOWQTPMzVzQQp+mKojLaUyoZFEbs67SSPLqMv\r\nrvJqw+qKuISc1zc+eN1B+xxzHceR2bX5My5wBQekEZp/K+b387W+i2dIKgVn\r\nI9Fh1AoVrJCl/vC5i2pksE+fHq3GIF42hPPb0YLQEuoU/vSPGMuuTOvQbxHQ\r\n1ZttDpXlhjdIIJ4uIag1/tZyK7fhupsQQuTabyWSJS/gT01cLKFX4C+8a/b2\r\nuc/K7+Fy9dpxVowihubhg9Oz1rf8G2jTmIMrpapQmNOSk44HMFtYBcm/HQdV\r\nxBLzs62dITQILqHXsMmLpVtzaPLdV1mMRiGIKthiISzaQpgEkmjpnytY065g\r\nK1kfqsT9u6ARnkrpb61SwB3RnvE3kd38HoJoZdpHXjkJFZKW2fX2jAhUa0xt\r\nFFCXd895tESuxhKSw9nHqxqCsCtD7z3bp82S1dj533gott7ENoouoLW2JOPC\r\nKBoIzMqdubLB7irXLTc0JmnaqkRM8DBMAp0=\r\n=FDYF\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","types":"lib/index.d.ts","engines":{"node":">=10"},"gitHead":"c4185d2e81ec33f287f2e5e6dad8b4368363d892","scripts":{"lint":"eslint -c .eslintrc.js src/*","test":"jest --config jest.config.js --runInBand","build":"tsc","format":"prettier --write \"src/**/*.ts\"","prepare":"npm run build","version":"npm run format && git add -A src","preversion":"npm run lint","postversion":"git push && git push --tags","prepublishOnly":"npm test && npm run lint"},"_npmUser":{"name":"balazskreith","email":"balazs.kreith@gmail.com"},"repository":{"url":"git+https://github.com/observertc/sfu-monitor-js.git","type":"git"},"_npmVersion":"6.14.15","description":"ObserveRTC SFU Integration Core Library","directories":{},"_nodeVersion":"14.18.3","dependencies":{"ws":"^8.5.0","uuid":"^8.3.2","bowser":"^2.11.0","loglevel":"^1.8.0","@types/ws":"^8.5.3","js-base64":"^3.7.2","js-sha256":"^0.9.0","protobufjs":"^6.11.2","@types/uuid":"^8.3.4","@types/events":"^3.0.0","@observertc/schemas":"^2.0.0-beta.57"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.5.0","eslint":"^8.12.0","ts-jest":"^27.1.4","bufferutil":"^4.0.6","typescript":"^4.6.3","@types/jest":"^27.4.0","utf-8-validate":"^5.0.9","@typescript-eslint/parser":"^5.18.0","@typescript-eslint/eslint-plugin":"^5.18.0"},"_npmOperationalInternal":{"tmp":"tmp/sfu-monitor-js_1.0.0-beta.20_1649508038449_0.9082314266700313","host":"s3://npm-registry-packages"},"deprecated":"Package no longer supported. Contact Support at https://www.npmjs.com/support for more info."},"1.0.0-beta.22":{"name":"@observertc/sfu-monitor-js","version":"1.0.0-beta.22","keywords":["webrtc","getStats","observertc","sfu","integration"],"author":{"name":"Balazs Kreith"},"license":"Apache-2.0","_id":"@observertc/sfu-monitor-js@1.0.0-beta.22","maintainers":[{"name":"pallab.gain","email":"pallab.gain@gmail.com"},{"name":"balazskreith","email":"balazs.kreith@gmail.com"}],"homepage":"https://github.com/observertc/sfu-monitor-js#readme","bugs":{"url":"https://github.com/observertc/sfu-monitor-js/issues"},"dist":{"shasum":"49afb7fc8e59913c045227f6435c0c70f42ceb8f","tarball":"https://registry.npmjs.org/@observertc/sfu-monitor-js/-/sfu-monitor-js-1.0.0-beta.22.tgz","fileCount":178,"integrity":"sha512-8d9CHn+fXB0H2xzo1dSFH9dOuW1v6tyKH/cIb5sqVOI11cxzV8ndrGFdqd+PypFuHPkWdojaHIQW78/d3+C/mw==","signatures":[{"sig":"MEQCID71PwhanfVQ0XEihYYb8I7XmGjGq4BIOzQnRPHBlKzBAiA4l0QKB7gXIO7b0pTn+pvzxnUYdNNIb79keeaDgkaoQQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":1069673,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiUu/zACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmr4Pw//STpum99Wb3GoricTc8Vs/SOBbp1lFKcg298tuHtPLeJkFqM3\r\nfhHme9JqAe6b6v1EaHPjNtnXKGe7AuVhhWmpmJfGDKT9vt/saLIdH2gK5cNP\r\nGeBjT/PfyY8/a4xTl0O8nn/euEPgJ/oIjM9UjDDiUvcz0FCpXGA/+pBu+Jea\r\ngXyhp1RtE0a1hTljQgjTMzEWE9+MiabRLvqERlwt0gqOpLRybZampOBKiPAi\r\nMOmI6jkxzqOyGRJccNtxmL/Dp9RQHJyMeYrgAgEcPplb/v0Yvdhyb2VTK66R\r\nniPchaI4KyFjjJu1GHPCOGa+agsnS2Mqfle/V50F5TOxvai4b9vTC1ou94cA\r\nYFLRw42I1vYbYJaTzERz6z6k8v17vYCEYcHaB7iKcomXmJpqHE1SMNCQv94F\r\nmah1GIBWY6a2jgSO/F8xZ58vmCbiJA7FDRUOVb1rk25Kmh4IPIXxD4Xw7SJz\r\nEwUhXHNZsaPqFSyJi/tN6Ky9uw+iq3Jo0Nch8gv+9CWfS3OGHb8usIAJ9ztZ\r\nPCcyhDvFcxXhIcu/ygPdpx7p242KGjyPlCy5qcURnZrYmECEvYCfvnNl8l+I\r\ne+XxkI2h0yPINW9x7GNfBcn1FYlJKuBxJa/z39RxmZilOM3hk+P0Wr1A8Yf1\r\nUtG6as/b1+CxFnFU/D4omQYdeLF0K7IQEh4=\r\n=XBap\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","types":"lib/index.d.ts","engines":{"node":">=10"},"gitHead":"1066b6569b5b75ba94a643e1b7e2770434a71d8c","scripts":{"lint":"eslint -c .eslintrc.js src/*","test":"jest --config jest.config.js --runInBand","build":"tsc","format":"prettier --write \"src/**/*.ts\"","prepare":"npm run build","version":"npm run format && git add -A src","preversion":"npm run lint","postversion":"git push && git push --tags","prepublishOnly":"npm test && npm run lint"},"_npmUser":{"name":"balazskreith","email":"balazs.kreith@gmail.com"},"repository":{"url":"git+https://github.com/observertc/sfu-monitor-js.git","type":"git"},"_npmVersion":"6.14.16","description":"ObserveRTC SFU Integration Core Library","directories":{},"_nodeVersion":"14.19.1","dependencies":{"ws":"^8.5.0","uuid":"^8.3.2","bowser":"^2.11.0","loglevel":"^1.8.0","@types/ws":"^8.5.3","js-base64":"^3.7.2","js-sha256":"^0.9.0","protobufjs":"^6.11.2","@types/uuid":"^8.3.4","@types/events":"^3.0.0","@observertc/schemas":"^2.0.0-beta.57"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.5.0","eslint":"^8.12.0","ts-jest":"^27.1.4","bufferutil":"^4.0.6","typescript":"^4.6.3","@types/jest":"^27.4.0","utf-8-validate":"^5.0.9","@typescript-eslint/parser":"^5.18.0","@typescript-eslint/eslint-plugin":"^5.18.0"},"_npmOperationalInternal":{"tmp":"tmp/sfu-monitor-js_1.0.0-beta.22_1649602547166_0.2875468772938574","host":"s3://npm-registry-packages"},"deprecated":"Package no longer supported. Contact Support at https://www.npmjs.com/support for more info."},"1.0.0-beta.23":{"name":"@observertc/sfu-monitor-js","version":"1.0.0-beta.23","keywords":["webrtc","getStats","observertc","sfu","integration"],"author":{"name":"Balazs Kreith"},"license":"Apache-2.0","_id":"@observertc/sfu-monitor-js@1.0.0-beta.23","maintainers":[{"name":"pallab.gain","email":"pallab.gain@gmail.com"},{"name":"balazskreith","email":"balazs.kreith@gmail.com"}],"homepage":"https://github.com/observertc/sfu-monitor-js#readme","bugs":{"url":"https://github.com/observertc/sfu-monitor-js/issues"},"dist":{"shasum":"7767e18a0fba07b3a59cee5fc016c21ef20eb98c","tarball":"https://registry.npmjs.org/@observertc/sfu-monitor-js/-/sfu-monitor-js-1.0.0-beta.23.tgz","fileCount":178,"integrity":"sha512-FWqq3BOUSpPy+Dv7eIq3wL5l2ksQqLkEE0I5f9y+IgxWp0wFEooPMqZrBP7dIW1WT7xypP+6zyKQcA4vMkA20g==","signatures":[{"sig":"MEUCIB72wUi/p9HZA7xERKgHrg21k/LJq+CN2mFCivGjQssAAiEA/Mv1gLGBz54Lt5d4UngJHVOd/k9TkZnsBGBXViOfJoA=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":1069491,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiUvdXACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmoppA//ech+t1aOPVKL5Y00FTqYlYndakCxLzayv2E6ifeKZJtfewdk\r\nGR6Jxf3BkzHpXi4DUSi228DdEqwikXx6zXQGunH0w6jJNizKdEO0/uWnjGrR\r\nosQTOK6JaljYThHjcqSAfd8z+VDdJ9dy8IozOS+nUBvW+8/UuzZNMLvJlmz0\r\nogLHFg8gvHCSCuguaqlT9tzGBtuJO9Oy4hPSDYdaLHp3FUnBexay16CEA2jt\r\nVb2BXGgkFWk566nPtl+9QmxveKfiQ91ofRNKm/lx2QalCUyMFzJU1nMuFMhw\r\nEGhEJ8BwTHeaeEL8h6UdlbyTMo4gybfVwQkTHAHmtchrR/UkqdTuIdsF3a81\r\nVJFmivcdVdzTInmvR58z7kqRXfMUOLZ4uho4MHT2ercb/e+Y8cgc4jJT4TOt\r\neQEqEOEvAOvYBUWZEJfl+9hVWCsZhimDRbd3B7o4sD5pcZLNj2B7KexS86vu\r\nkNbSHpdQveRLSNVlPSpoSZmcoTpc7IJ/46uLPVlNNnM952S2SxLzC8BJnABT\r\nLYKi34nL6e06PJvjyLoE7m3YPVK2qel4Nz/st8YVOl3F0fpL4kot68TcLZza\r\naR8S8+A2Ch7F5i4IKkJzsHLp1HWlz7sN1P+c9rKppg5oX5So0MbPABHPxq2j\r\nENqoh5W1wQitL8T+bAikp2pKJYzP8NgftrI=\r\n=BKuA\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","types":"lib/index.d.ts","engines":{"node":">=10"},"gitHead":"5a8f53bdd0c3afc8328d4d8be3f20b1c20a14fe6","scripts":{"lint":"eslint -c .eslintrc.js src/*","test":"jest --config jest.config.js --runInBand","build":"tsc","format":"prettier --write \"src/**/*.ts\"","prepare":"npm run build","version":"npm run format && git add -A src","preversion":"npm run lint","postversion":"git push && git push --tags","prepublishOnly":"npm test && npm run lint"},"_npmUser":{"name":"balazskreith","email":"balazs.kreith@gmail.com"},"repository":{"url":"git+https://github.com/observertc/sfu-monitor-js.git","type":"git"},"_npmVersion":"6.14.16","description":"ObserveRTC SFU Integration Core Library","directories":{},"_nodeVersion":"14.19.1","dependencies":{"ws":"^8.5.0","uuid":"^8.3.2","bowser":"^2.11.0","loglevel":"^1.8.0","@types/ws":"^8.5.3","js-base64":"^3.7.2","js-sha256":"^0.9.0","protobufjs":"^6.11.2","@types/uuid":"^8.3.4","@types/events":"^3.0.0","@observertc/schemas":"^2.0.0-beta.57"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.5.0","eslint":"^8.12.0","ts-jest":"^27.1.4","bufferutil":"^4.0.6","typescript":"^4.6.3","@types/jest":"^27.4.0","utf-8-validate":"^5.0.9","@typescript-eslint/parser":"^5.18.0","@typescript-eslint/eslint-plugin":"^5.18.0"},"_npmOperationalInternal":{"tmp":"tmp/sfu-monitor-js_1.0.0-beta.23_1649604439118_0.8326647617915346","host":"s3://npm-registry-packages"},"deprecated":"Package no longer supported. Contact Support at https://www.npmjs.com/support for more info."},"1.0.0-beta.24":{"name":"@observertc/sfu-monitor-js","version":"1.0.0-beta.24","keywords":["webrtc","getStats","observertc","sfu","integration"],"author":{"name":"Balazs Kreith"},"license":"Apache-2.0","_id":"@observertc/sfu-monitor-js@1.0.0-beta.24","maintainers":[{"name":"pallab.gain","email":"pallab.gain@gmail.com"},{"name":"balazskreith","email":"balazs.kreith@gmail.com"}],"homepage":"https://github.com/observertc/sfu-monitor-js#readme","bugs":{"url":"https://github.com/observertc/sfu-monitor-js/issues"},"dist":{"shasum":"9387c5c9d3e8b5b0f404ba7b75b8467a8694b89b","tarball":"https://registry.npmjs.org/@observertc/sfu-monitor-js/-/sfu-monitor-js-1.0.0-beta.24.tgz","fileCount":178,"integrity":"sha512-NhJYNU33xmrJSWiRyE4GpFW8U3bDFRFjkJaHFucE9mrZouJelQAKT+2t10gyTdOTh8Mipwj20C/MuycUCnHOHg==","signatures":[{"sig":"MEYCIQCf1ecSg9JkeqW/VsCyOxIx/mTLO52txSYj7JUW8oiKvAIhAKY6HonpEYuNjpLBF+7nnRVd19hELJMMA5X8/hMb6D1g","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":1069501,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiUviYACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmriBQ//blnXqu+BlGtzLKWy+yjHnTpuYXQUCV8nnqZzNiTLeVPo5aav\r\nL+ODVraK3EQE9dmOIOTjcYdjxkSOk8YpEJchOw59Nv6n+rg3UJJIs40JbKEZ\r\n7tr3p9PUMUTS66Vqbzx6Yhwi+11WovBX9Z4XYWeuaoPbAinWHsjzN0RHCK3h\r\n3W8zhqrd/XWnUzWeFexnmY4xsn4fwqc9bJI2LoOBzJXbo2HqfX+SjLjawhAz\r\nweQw2VFHpkmCV/NSwuq2ZT294lbV1E9EcvuWbLqJD/3x/JpWloNUSVDSEVuV\r\nQ7tJijygZPoRrMUjt1FazOIXZj9r6W98PeAH1/QIuhhJRaKgcCMmkMj4cIR9\r\nAPnGZ8RQ2bk+C+FozINOTuYFOzpyAILUS34TE3Ky5KT18wxZx9cJMbfpjpkB\r\n8mOEbc8lu3PNPZLkIYEwg3rRA9TK4XnGcQ0anj2kw6Zw3VwXYGgJiDmb/bAk\r\nG8PDbzbGdQ0ss3k/fGlAUybsVl1u+v6yzAHSgvaSZ3YW7pox7em8ratHVAIS\r\nA1XxcTpmuGNvSPTPetLpyBzzCB5jgWynICoaj0a30wEB7xgwoWhn81dTG2Qg\r\nQFUhIGPggPYpKzwwaBK5EzQPjeLb5CgFViCl7I4FtJs6bynHnTbHpGz6yyez\r\naHWvwv+lVmt2DuiAcRAiChkJeuofmRuxr2I=\r\n=zFRl\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","types":"lib/index.d.ts","engines":{"node":">=10"},"gitHead":"804d05a36f3352548e987f7e86ce559169487cb2","scripts":{"lint":"eslint -c .eslintrc.js src/*","test":"jest --config jest.config.js --runInBand","build":"tsc","format":"prettier --write \"src/**/*.ts\"","prepare":"npm run build","version":"npm run format && git add -A src","preversion":"npm run lint","postversion":"git push && git push --tags","prepublishOnly":"npm test && npm run lint"},"_npmUser":{"name":"balazskreith","email":"balazs.kreith@gmail.com"},"repository":{"url":"git+https://github.com/observertc/sfu-monitor-js.git","type":"git"},"_npmVersion":"6.14.16","description":"ObserveRTC SFU Integration Core Library","directories":{},"_nodeVersion":"14.19.1","dependencies":{"ws":"^8.5.0","uuid":"^8.3.2","bowser":"^2.11.0","loglevel":"^1.8.0","@types/ws":"^8.5.3","js-base64":"^3.7.2","js-sha256":"^0.9.0","protobufjs":"^6.11.2","@types/uuid":"^8.3.4","@types/events":"^3.0.0","@observertc/schemas":"^2.0.0-beta.57"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.5.0","eslint":"^8.12.0","ts-jest":"^27.1.4","bufferutil":"^4.0.6","typescript":"^4.6.3","@types/jest":"^27.4.0","utf-8-validate":"^5.0.9","@typescript-eslint/parser":"^5.18.0","@typescript-eslint/eslint-plugin":"^5.18.0"},"_npmOperationalInternal":{"tmp":"tmp/sfu-monitor-js_1.0.0-beta.24_1649604760011_0.753715961038343","host":"s3://npm-registry-packages"},"deprecated":"Package no longer supported. Contact Support at https://www.npmjs.com/support for more info."},"1.0.0-beta.25":{"name":"@observertc/sfu-monitor-js","version":"1.0.0-beta.25","keywords":["webrtc","getStats","observertc","sfu","integration"],"author":{"name":"Balazs Kreith"},"license":"Apache-2.0","_id":"@observertc/sfu-monitor-js@1.0.0-beta.25","maintainers":[{"name":"pallab.gain","email":"pallab.gain@gmail.com"},{"name":"balazskreith","email":"balazs.kreith@gmail.com"}],"homepage":"https://github.com/observertc/sfu-monitor-js#readme","bugs":{"url":"https://github.com/observertc/sfu-monitor-js/issues"},"dist":{"shasum":"6bed92e774060efd8ee84daef2be75c2404d57d0","tarball":"https://registry.npmjs.org/@observertc/sfu-monitor-js/-/sfu-monitor-js-1.0.0-beta.25.tgz","fileCount":178,"integrity":"sha512-8kl/o3EELmALYA69RQKOBFyNtbStTurmZMpjkzdDcd3UloJgfpomgusFK3bIzEjEqVwUxy6vmRRCC0p8GziWDw==","signatures":[{"sig":"MEYCIQCQLbY3lfh6uTovsrORh1TVKjHSqmi0MJGL33R62X+QOAIhAPLk9cUrHiANojLTR5UONk9nDXVa746OQoXGYZNNwsZJ","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":1069594,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiUvyVACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmr+3xAAhOCfVQbhLZD65utcGlnYCFtA37mAneDDdfgT4ErLKvFvLo6a\r\nG1NrfnpNRP2BsqcqM6vOXqOnI14GCvxU/gmLi1tmqPaYSBu1s4bXtIhA6hkC\r\nWyExA+3ib+RfiUDi/B98vn5m60Ly4ZtfN0cqdRP/guH7C1EvIfe/s+NHPNq4\r\nk2lL2OKV8RUas1hehwGu01CJ6JOHSoipKJX5Q9TGIoNGDHmWnIw+UBZym2Ef\r\n6fMc0+RwITNt0l2KFowInReSft8wBytu3k0ukOS3B/dHott40zf+V6UvUUK3\r\naqAWbUZSofxf7FVWNvWD+cF+DjUzSKJ1uJoOh6Kwcg8ZsHA/2zT/6/9zhE7a\r\nu4gPgIoetfxsgZcw+6NDW6D0BSnqTFz+q9fjG0v0sGUR5Zr/o1Deh3odmRBL\r\nBR8HdAAdQc+Q8ASa51hUbRXHgrxze185vJclBmx2+4gwVdGaOoW95nSR8w9k\r\nTot0mAZHLM5bETUpwJqiyN+xzgCpr3dmZjJvIy4Z27v4EC0H7CxbZyMLhsgC\r\nXZsSFV8A0nNdb69HNzMN5mEG3d4C6RMrjIg9Jg81HU0MuQynhrrc47oEhSn7\r\nc4vVEbfo/fETV45y847XIWzt+udb5cxRKQAEM6gBDcED/0iPFjyqe+wvxVaj\r\ngAkp/J4fXGWImU+yKSIXUzfyHRUsgnnkRsg=\r\n=japa\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","types":"lib/index.d.ts","engines":{"node":">=10"},"gitHead":"8e4e41c015e12ba780a3884a3935f32839530d82","scripts":{"lint":"eslint -c .eslintrc.js src/*","test":"jest --config jest.config.js --runInBand","build":"tsc","format":"prettier --write \"src/**/*.ts\"","prepare":"npm run build","version":"npm run format && git add -A src","preversion":"npm run lint","postversion":"git push && git push --tags","prepublishOnly":"npm test && npm run lint"},"_npmUser":{"name":"balazskreith","email":"balazs.kreith@gmail.com"},"repository":{"url":"git+https://github.com/observertc/sfu-monitor-js.git","type":"git"},"_npmVersion":"6.14.16","description":"ObserveRTC SFU Integration Core Library","directories":{},"_nodeVersion":"14.19.1","dependencies":{"ws":"^8.5.0","uuid":"^8.3.2","bowser":"^2.11.0","loglevel":"^1.8.0","@types/ws":"^8.5.3","js-base64":"^3.7.2","js-sha256":"^0.9.0","protobufjs":"^6.11.2","@types/uuid":"^8.3.4","@types/events":"^3.0.0","@observertc/schemas":"^2.0.0-beta.57"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.5.0","eslint":"^8.12.0","ts-jest":"^27.1.4","bufferutil":"^4.0.6","typescript":"^4.6.3","@types/jest":"^27.4.0","utf-8-validate":"^5.0.9","@typescript-eslint/parser":"^5.18.0","@typescript-eslint/eslint-plugin":"^5.18.0"},"_npmOperationalInternal":{"tmp":"tmp/sfu-monitor-js_1.0.0-beta.25_1649605781766_0.06884387948217396","host":"s3://npm-registry-packages"},"deprecated":"Package no longer supported. Contact Support at https://www.npmjs.com/support for more info."},"1.0.0-beta.26":{"name":"@observertc/sfu-monitor-js","version":"1.0.0-beta.26","keywords":["webrtc","getStats","observertc","sfu","integration"],"author":{"name":"Balazs Kreith"},"license":"Apache-2.0","_id":"@observertc/sfu-monitor-js@1.0.0-beta.26","maintainers":[{"name":"pallab.gain","email":"pallab.gain@gmail.com"},{"name":"balazskreith","email":"balazs.kreith@gmail.com"}],"homepage":"https://github.com/observertc/sfu-monitor-js#readme","bugs":{"url":"https://github.com/observertc/sfu-monitor-js/issues"},"dist":{"shasum":"76cfc88c475d6612009ba910d2911daaad567b1c","tarball":"https://registry.npmjs.org/@observertc/sfu-monitor-js/-/sfu-monitor-js-1.0.0-beta.26.tgz","fileCount":178,"integrity":"sha512-aZz78wLVr6uZuPFg6IKOXWRVTw9qK+1r4J2RypAPiACaAeJBn2MscefA7N0gfqM3vZ9TuD4PWCkGD+SrCvCt5g==","signatures":[{"sig":"MEUCIByd7maKWqAQ5SdC696WqbaJgsatBPO2/GvPq7EyOSLwAiEAhZjN3gPpSZcfr8vgfh7bSQqflBNKKQYwt9YLM95+dxM=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":1070431,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiUxKUACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmqtlQ//Uk9XFykjEAjhVGP+szDosaLEQIeVH1M1BlZxr6DiXQnIRzT4\r\n5kTt3j2zM3YD27RDv0oCFVimLr+fqqfvKpFcORk6PlneYEcTjss8BxUdHboZ\r\nTmHDA8FNESwlPur0ANF6FndNuj/c5un+PuyiAJtJ1PKWuNZ0RnES0OxlKmFC\r\n5UFoYgMs9gxtjcfXwKtWq81f3//V0bsHCvzTjz8JgYbt8xyAN6HGNQgYcvmE\r\ncXpTZldxap1iVKZbsKZlg0IfhSAtslVmCmwlox7/rqZVYfzrZi4J/CfevX0+\r\nL3wJBbWytN+JTPhLbAJsOqb7cEdB4XozvJETDYLGmzKEnJYx47Hy6eXXZkSA\r\n4MtXj7FBQMSeXemmq0lk0bJ/XatoHrcdW1AnYZoZbCy9oLpxnEEKDcz0/y9h\r\nsxHQjkSQ95j5M2ET5Dw3jcHxp+Cwh0Z4jCQ0IYa7XSKs7JDrLEx83ihMkgh7\r\n4xWuk7zk0FZExVKawnEx7W/Q8Z0iC2+Us08KULcAvuu2RUddhiooFcOG12kd\r\n8SvGgrO2E/wBaJD2lDPZApSxqfHvYPk2mWW1r0b4vIhHvWwVKo1p2xC5tRac\r\nQ4RQGIOi5TljYdh/6nk70NJcPnqpI2q1EVOeLlEvRWeJJ3ibABMjUWOXFfW6\r\nUghvoqObHOtZ/pjqk1KSNTtUM/sWNRXpwzM=\r\n=EtPF\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","types":"lib/index.d.ts","engines":{"node":">=10"},"gitHead":"0483aef5322c305679e0783c1b5b9790b91c4737","scripts":{"lint":"eslint -c .eslintrc.js src/*","test":"jest --config jest.config.js --runInBand","build":"tsc","format":"prettier --write \"src/**/*.ts\"","prepare":"npm run build","version":"npm run format && git add -A src","preversion":"npm run lint","postversion":"git push && git push --tags","prepublishOnly":"npm test && npm run lint"},"_npmUser":{"name":"balazskreith","email":"balazs.kreith@gmail.com"},"repository":{"url":"git+https://github.com/observertc/sfu-monitor-js.git","type":"git"},"_npmVersion":"6.14.16","description":"ObserveRTC SFU Integration Core Library","directories":{},"_nodeVersion":"14.19.1","dependencies":{"ws":"^8.5.0","uuid":"^8.3.2","bowser":"^2.11.0","loglevel":"^1.8.0","@types/ws":"^8.5.3","js-base64":"^3.7.2","js-sha256":"^0.9.0","protobufjs":"^6.11.2","@types/uuid":"^8.3.4","@types/events":"^3.0.0","@observertc/schemas":"^2.0.0-beta.57"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.5.0","eslint":"^8.12.0","ts-jest":"^27.1.4","bufferutil":"^4.0.6","typescript":"^4.6.3","@types/jest":"^27.4.0","utf-8-validate":"^5.0.9","@typescript-eslint/parser":"^5.18.0","@typescript-eslint/eslint-plugin":"^5.18.0"},"_npmOperationalInternal":{"tmp":"tmp/sfu-monitor-js_1.0.0-beta.26_1649611412497_0.9105305252127205","host":"s3://npm-registry-packages"},"deprecated":"Package no longer supported. Contact Support at https://www.npmjs.com/support for more info."},"1.0.0-beta.27":{"name":"@observertc/sfu-monitor-js","version":"1.0.0-beta.27","keywords":["webrtc","getStats","observertc","sfu","integration"],"author":{"name":"Balazs Kreith"},"license":"Apache-2.0","_id":"@observertc/sfu-monitor-js@1.0.0-beta.27","maintainers":[{"name":"pallab.gain","email":"pallab.gain@gmail.com"},{"name":"balazskreith","email":"balazs.kreith@gmail.com"}],"homepage":"https://github.com/observertc/sfu-monitor-js#readme","bugs":{"url":"https://github.com/observertc/sfu-monitor-js/issues"},"dist":{"shasum":"5482978f0979fb46f881acae0d06ad7b59a49cd6","tarball":"https://registry.npmjs.org/@observertc/sfu-monitor-js/-/sfu-monitor-js-1.0.0-beta.27.tgz","fileCount":178,"integrity":"sha512-fVYLXPC1wVAtlxMvXVsDyWaQHpwnqldLqhseLqB2AfnYkqFIMS1bPJavlO0hM8zciYfKoFtkDLS9s88+4Hanng==","signatures":[{"sig":"MEUCIDCH6NOnHkanYQFfvvym50Bj7Fsk/vrHDl2AaRJ3WvM2AiEAxoNpWoFV7oc7q/AzYk7k8uQJ7usYIs69kbH07sphsuM=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":1071020,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiU6rbACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmp+MQ//Q+Xam46mhKL1P0XguFAeBQTzkqiXcEQ5NkEVzzDOO6P4asPj\r\njJaFjeOGiuybATVs9/mExIPrZIj+/AekAMJaI98hSXAzkhgMCKNAlfs2+5Ng\r\nB7IZXWd5UdXEQ2o9pzv8vIkgOJntbeGZ28zKX/gQ6X/F0aLZEbWVQvrmsbtE\r\nb5uE62ewv57AVYjwGR/ovpZgWG1CdMCqzO7HBsFd9NiNlly8NARmt1n/GjZf\r\nxaAEcg+N5392soyCOnBCVp3TMmEjEj7mFBe+5UFvzPTHXFC5j9wBzoG+juw/\r\n5yU8l6PNiHC0Uefm/ndG//z2Eb7ANNaMZyunyctmQuWxjm92BcVleHn7KJKm\r\nzmCVgs1SmIRUvND/6c+9rnT6GAB75Uu7QUlqsDBCW84f19MCzSK3owPnvYxD\r\nU5hklVCVxM+3IRM2nP6Hscg1/hG1X4uCApSXrITTThmse1UV/gp2CsXZZeKZ\r\nf6WecGoqh9aNZxn1or8j/pF4a63DeeSJJSxq2y59IBRrXElWmdmJBGAWT87W\r\nxQg8ATf/eD8X8UBFFiJP9gM51TqJOunSWuu6kQfakLUmTXeAd6+i081ZmO+J\r\nj3FXe+KhOmu1CUD6LJlkOhv/Ccg/QEAUXBN3CgMTR24LA9nFO/HY30xlQktJ\r\no9+2a0/mbByEmjxk/puK0+HEm4pyCB2WDZc=\r\n=2ONF\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","types":"lib/index.d.ts","engines":{"node":">=10"},"gitHead":"13bda62373a095636eda2f8849c85bd5b8334dca","scripts":{"lint":"eslint -c .eslintrc.js src/*","test":"jest --config jest.config.js --runInBand","build":"tsc","format":"prettier --write \"src/**/*.ts\"","prepare":"npm run build","version":"npm run format && git add -A src","preversion":"npm run lint","postversion":"git push && git push --tags","prepublishOnly":"npm test && npm run lint"},"_npmUser":{"name":"balazskreith","email":"balazs.kreith@gmail.com"},"repository":{"url":"git+https://github.com/observertc/sfu-monitor-js.git","type":"git"},"_npmVersion":"6.14.16","description":"ObserveRTC SFU Integration Core Library","directories":{},"_nodeVersion":"14.19.1","dependencies":{"ws":"^8.5.0","uuid":"^8.3.2","bowser":"^2.11.0","loglevel":"^1.8.0","@types/ws":"^8.5.3","js-base64":"^3.7.2","js-sha256":"^0.9.0","protobufjs":"^6.11.2","@types/uuid":"^8.3.4","@types/events":"^3.0.0","@observertc/schemas":"^2.0.0-beta.57"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.5.0","eslint":"^8.12.0","ts-jest":"^27.1.4","bufferutil":"^4.0.6","typescript":"^4.6.3","@types/jest":"^27.4.0","utf-8-validate":"^5.0.9","@typescript-eslint/parser":"^5.18.0","@typescript-eslint/eslint-plugin":"^5.18.0"},"_npmOperationalInternal":{"tmp":"tmp/sfu-monitor-js_1.0.0-beta.27_1649650395276_0.24148637190348632","host":"s3://npm-registry-packages"},"deprecated":"Package no longer supported. Contact Support at https://www.npmjs.com/support for more info."},"1.0.0-beta.28":{"name":"@observertc/sfu-monitor-js","version":"1.0.0-beta.28","keywords":["webrtc","getStats","observertc","sfu","integration"],"author":{"name":"Balazs Kreith"},"license":"Apache-2.0","_id":"@observertc/sfu-monitor-js@1.0.0-beta.28","maintainers":[{"name":"pallab.gain","email":"pallab.gain@gmail.com"},{"name":"balazskreith","email":"balazs.kreith@gmail.com"}],"homepage":"https://github.com/observertc/sfu-monitor-js#readme","bugs":{"url":"https://github.com/observertc/sfu-monitor-js/issues"},"dist":{"shasum":"5ea05ab6e25759eb8fac33fcc14797f46c746c83","tarball":"https://registry.npmjs.org/@observertc/sfu-monitor-js/-/sfu-monitor-js-1.0.0-beta.28.tgz","fileCount":178,"integrity":"sha512-1GehXJvLFAUdo44015T8nRTbhUtYgS67VIgXGt7PLINxCD1QH6abCqv45ecYgWFgHFt6qKBvz2yH/xRUED1cjQ==","signatures":[{"sig":"MEQCID+HE6AVRdZV+eCler6m4F4p0fdCt70KwxDMQu9Ukg88AiBkx6SBY5SY7p5YpB3NWY3IBy7TkZ1QdWkn6IeFaIh1Rg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":1078699,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiWAvEACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmo65Q/+K4YXKRAgTkpvZuA/Uet+V0xjpF9dvslRvMl+PLQvZL9TTK3K\r\n6Bk1kQ/E+qrcSXiJHFaOkgeERt0nmUIWOj5UzIMknQCBpDLcNhMSvhf5MVEA\r\nsjy0G3w676bjjrh4NBGCjnhg6yS1O3ZYVqjJ3aYiJHdoftPf2/Flcu9bu0mn\r\nS9/xxC3m8Ye0aS0MR9X21VOds89KvlS3x8tn8UmImQxC1Yb1iKZfmbQAIK1S\r\nW0Itkjc1judlayyZHX3Jn3fHC0UYBW0JhKzYzk96mOMThMQLpGReScVdkWUK\r\nohb3cmWitsg0sbERSiWcUqj+AYjxUdrhoJBsQJS0G5smShJv39hcEX5MjihE\r\nasc71Ygy1xydJt7G+JIbmbVTeLAWlc49zJQRBELj8xXhZQO78vtGonO8AMEs\r\nfMpephzAbmrJCq78XsDIvrZC2DdSPuy7Bcseq2LUq0CZd2FSm3Aln6pazIAd\r\nP6fdIYEKcEVX9BrB0Ksxd9RSO2L4Qjam2uSledqnUvtDwJDLE1dPpPxUuHoG\r\nskD4d6B6sggemZ45D0ZU1gCodGRIL8UfwpwNG/irc7q7hYeS8nqSCcBshwPd\r\nrKt/WenkRr+SbkLi2llWQJXWrdfwpspehtMvZjWdfWdJWiKXEPKsSQ+GcrZB\r\n5Tl0SmWEu4T/fy93gqC8aEDvaMv09cgJsU0=\r\n=wcHe\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","types":"lib/index.d.ts","engines":{"node":">=10"},"gitHead":"9e72b7f6490a8f3e8afb9f137396ea777189d411","scripts":{"lint":"eslint -c .eslintrc.js src/*","test":"jest --config jest.config.js --runInBand","build":"tsc","format":"prettier --write \"src/**/*.ts\"","prepare":"npm run build","version":"npm run format && git add -A src","preversion":"npm run lint","postversion":"git push && git push --tags","prepublishOnly":"npm test && npm run lint"},"_npmUser":{"name":"balazskreith","email":"balazs.kreith@gmail.com"},"repository":{"url":"git+https://github.com/observertc/sfu-monitor-js.git","type":"git"},"_npmVersion":"6.14.16","description":"ObserveRTC SFU Integration Core Library","directories":{},"_nodeVersion":"14.19.1","dependencies":{"ws":"^8.5.0","uuid":"^8.3.2","bowser":"^2.11.0","loglevel":"^1.8.0","@types/ws":"^8.5.3","js-base64":"^3.7.2","js-sha256":"^0.9.0","protobufjs":"^6.11.2","@types/uuid":"^8.3.4","@types/events":"^3.0.0","@observertc/schemas":"^2.0.0-beta.59"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.5.0","eslint":"^8.12.0","ts-jest":"^27.1.4","bufferutil":"^4.0.6","typescript":"^4.6.3","@types/jest":"^27.4.0","utf-8-validate":"^5.0.9","@typescript-eslint/parser":"^5.18.0","@typescript-eslint/eslint-plugin":"^5.18.0"},"_npmOperationalInternal":{"tmp":"tmp/sfu-monitor-js_1.0.0-beta.28_1649937348660_0.29156577665122896","host":"s3://npm-registry-packages"},"deprecated":"Package no longer supported. Contact Support at https://www.npmjs.com/support for more info."},"1.0.0-beta.29":{"name":"@observertc/sfu-monitor-js","version":"1.0.0-beta.29","keywords":["webrtc","getStats","observertc","sfu","integration"],"author":{"name":"Balazs Kreith"},"license":"Apache-2.0","_id":"@observertc/sfu-monitor-js@1.0.0-beta.29","maintainers":[{"name":"pallab.gain","email":"pallab.gain@gmail.com"},{"name":"balazskreith","email":"balazs.kreith@gmail.com"}],"homepage":"https://github.com/observertc/sfu-monitor-js#readme","bugs":{"url":"https://github.com/observertc/sfu-monitor-js/issues"},"dist":{"shasum":"e73448f26c1c5c0a789cef1be9259ecd18ef071d","tarball":"https://registry.npmjs.org/@observertc/sfu-monitor-js/-/sfu-monitor-js-1.0.0-beta.29.tgz","fileCount":182,"integrity":"sha512-KIRO/TZMyVDR1IeDbqrXQkw1plJjLgHq+IYh8feJI7cU35JYSI9JgXcn4q6QkpIno84dD7hfDJyh3N1Z5EKcQQ==","signatures":[{"sig":"MEUCIHdrCnKE12w10/WnxjnnrNB1ecKzlBgy8BTaRHhmkhTUAiEAgFb6mOhIIBazHtrgG6vUFn7oSU50r4HXcRc7kqMVHaQ=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":1084335,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiXpVUACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmqkHA/+LhyJg1CaM0bfM2CNuDfXoYlC7SjJEPCJfyPvPi2dumPGoAdU\r\nQlblrovCRyMxQu6DDG4Y0CD3sLjG/j0NXOBNqoGLE5n2gNTiI5pypOMobfyt\r\nmCpF8Hw+wWwOeE9+FhaLRinaC8prvfiLt/y7ShpM9M8q0y4JH5DmeO7/HJJD\r\n8bUI6wU10Lj8/G1OabGHv1mDnez8Mdm4yYv4TAf6SLO623gVbMXrHYl++xFn\r\nDb1lOvp/N5TFLtmGh080nTADPqEF7FnMWRogJSFDwY6Qs6XdWt3AKa1gBd5B\r\nl2rYwyoryHrMqlZ19/Tqy/U8bOe+SKfEATBgTs2a+RQNuUm+NnkCMSA++m3p\r\nag0PHI3StDQUmhAOqiJhWLAxi7DqF+tLzRC972jOJ8Evj+go941jNAzFVjlL\r\nSyFxXD0OKNJyPWl/+sLuWJ6fKRGm3UmCAWOCfid5mJWWBdR/JdQPq/x/6Odz\r\nEC7L8eg1DlKB4fyjFOg7+sxrRM3D3C1qlnS5ATuxOQoUX8aXvTKm7BWMDDax\r\nkyu7CRuj7vgvr3kpao5HeHFuekwgjge3nkH0qQrQ65+/W4zoyqtGgNaJU9qp\r\nYfhwruNXnpsbU63aqW6mxc4J3hmMBx/9Lk4tQq6qWkjcLgY0aYC848lWMLNG\r\nBTkLFKEtu9MO50ZtQta+NfFmzPyBq5F+vyI=\r\n=mUXr\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","types":"lib/index.d.ts","engines":{"node":">=10"},"gitHead":"99eaa78ef1bff0578946f7e7f17862033bae7a85","scripts":{"lint":"eslint -c .eslintrc.js src/*","test":"jest --config jest.config.js --runInBand","build":"tsc","format":"prettier --write \"src/**/*.ts\"","prepare":"npm run build","version":"npm run format && git add -A src","preversion":"npm run lint","postversion":"git push && git push --tags","prepublishOnly":"npm test && npm run lint"},"_npmUser":{"name":"balazskreith","email":"balazs.kreith@gmail.com"},"repository":{"url":"git+https://github.com/observertc/sfu-monitor-js.git","type":"git"},"_npmVersion":"6.14.16","description":"ObserveRTC SFU Integration Core Library","directories":{},"_nodeVersion":"14.19.1","dependencies":{"ws":"^8.5.0","uuid":"^8.3.2","bowser":"^2.11.0","loglevel":"^1.8.0","@types/ws":"^8.5.3","js-base64":"^3.7.2","js-sha256":"^0.9.0","protobufjs":"^6.11.2","@types/uuid":"^8.3.4","@types/events":"^3.0.0","@observertc/schemas":"^2.0.0-beta.61"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.5.0","eslint":"^8.12.0","ts-jest":"^27.1.4","bufferutil":"^4.0.6","typescript":"^4.6.3","@types/jest":"^27.4.0","utf-8-validate":"^5.0.9","@typescript-eslint/parser":"^5.18.0","@typescript-eslint/eslint-plugin":"^5.18.0"},"_npmOperationalInternal":{"tmp":"tmp/sfu-monitor-js_1.0.0-beta.29_1650365780177_0.9634207390554954","host":"s3://npm-registry-packages"},"deprecated":"Package no longer supported. Contact Support at https://www.npmjs.com/support for more info."},"1.0.0-beta.30":{"name":"@observertc/sfu-monitor-js","version":"1.0.0-beta.30","keywords":["webrtc","getStats","observertc","sfu","integration"],"author":{"name":"Balazs Kreith"},"license":"Apache-2.0","_id":"@observertc/sfu-monitor-js@1.0.0-beta.30","maintainers":[{"name":"pallab.gain","email":"pallab.gain@gmail.com"},{"name":"balazskreith","email":"balazs.kreith@gmail.com"}],"homepage":"https://github.com/observertc/sfu-monitor-js#readme","bugs":{"url":"https://github.com/observertc/sfu-monitor-js/issues"},"dist":{"shasum":"02692ec31c8ea2c8b38997ba0b96a76a3fe6b46e","tarball":"https://registry.npmjs.org/@observertc/sfu-monitor-js/-/sfu-monitor-js-1.0.0-beta.30.tgz","fileCount":182,"integrity":"sha512-RbI0eTnqjoZJYZid6f28LWkaDSzZ7d34C5/Hw1prQPz8FrYncVhlNZv1szoeEV59QMOxWS8JqO0VeLSvHJY0ig==","signatures":[{"sig":"MEYCIQDb2wu4m+O1ee9mGJV50aekoL/p+CpNugPXImfmjamV6AIhAKcpAa8HfUVpbO2R6KU1YnsLf6ApH83d3k7f6M63szuP","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":1084757,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiYCo+ACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmomiA//QvUCOgJXhu/mhMD1WUoDLC45OMGwb4J+L/PP7D3i184VBvbj\r\nE2tANrtaXl2BEH9B2pguTncENe7IppIqFNhiUBhgRSgIxvyay1idTF2b5ftK\r\nIO1ExNL6k5jUZewIAVwUrpV3fmIl7IiEQvqb4/ZiQWZb9vGMyV0XhyoeJuD+\r\nw0pzu4jd4LTnNffCnidPIxnceEhc2jd0dXXHpMlWqpSythvi5w5n2btnBoaz\r\nVSSp4Ptrd/4FsY1oRb3imxG4xzaf2h/4BGMTHOMGNEdSLbzW8yfd4plIlGg0\r\niVlGouReBrMoN7sq+pHIuBJhGXhhUlKirLVdH6TKg6Lr1Lz8B/e4O2RmKmFX\r\nCzkaF3E5Zs3vhGiPcDTF8bFYMt2lIyKI94NM6VNbs530+DbltCTjMh7rZKyx\r\nfzPI0we92jg+G8OMEQc/DOLx+fTQnIZ2uCQXcVPQJXAoft5FzhYnpaNeupxj\r\nwbwW9p74o20NAYoNCirliJevF1NIPye+N9mstW1/jm2Dxjtn7/ZhH2prX+zt\r\nHLdZK6BO+Skp3g1qJiWuyk/py3qWAjTlkEyexrRETJmS9+8ZjXTs9FCbp/N+\r\np4yhOe2HOywJNjDhpvMdKMafMIhbvvDPZfLOl2ao2flio7kEBen5qEizgPWa\r\nPEFT+PEbRg6ZJIsEbmBQNvs1hRpcgJhX/BI=\r\n=iaLi\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","types":"lib/index.d.ts","engines":{"node":">=10"},"gitHead":"802812166b84a5d70a91ac2228ee640c20f35d06","scripts":{"lint":"eslint -c .eslintrc.js src/*","test":"jest --config jest.config.js --runInBand","build":"tsc","format":"prettier --write \"src/**/*.ts\"","prepare":"npm run build","version":"npm run format && git add -A src","preversion":"npm run lint","postversion":"git push && git push --tags","prepublishOnly":"npm test && npm run lint"},"_npmUser":{"name":"balazskreith","email":"balazs.kreith@gmail.com"},"repository":{"url":"git+https://github.com/observertc/sfu-monitor-js.git","type":"git"},"_npmVersion":"6.14.16","description":"ObserveRTC SFU Integration Core Library","directories":{},"_nodeVersion":"14.19.1","dependencies":{"ws":"^8.5.0","uuid":"^8.3.2","bowser":"^2.11.0","loglevel":"^1.8.0","@types/ws":"^8.5.3","js-base64":"^3.7.2","js-sha256":"^0.9.0","protobufjs":"^6.11.2","@types/uuid":"^8.3.4","@types/events":"^3.0.0","@observertc/schemas":"^2.0.0-beta.61"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.5.0","eslint":"^8.12.0","ts-jest":"^27.1.4","bufferutil":"^4.0.6","typescript":"^4.6.3","@types/jest":"^27.4.0","utf-8-validate":"^5.0.9","@typescript-eslint/parser":"^5.18.0","@typescript-eslint/eslint-plugin":"^5.18.0"},"_npmOperationalInternal":{"tmp":"tmp/sfu-monitor-js_1.0.0-beta.30_1650469438537_0.4773416517094775","host":"s3://npm-registry-packages"},"deprecated":"Package no longer supported. Contact Support at https://www.npmjs.com/support for more info."},"1.0.0-beta.31":{"name":"@observertc/sfu-monitor-js","version":"1.0.0-beta.31","keywords":["webrtc","getStats","observertc","sfu","integration"],"author":{"name":"Balazs Kreith"},"license":"Apache-2.0","_id":"@observertc/sfu-monitor-js@1.0.0-beta.31","maintainers":[{"name":"pallab.gain","email":"pallab.gain@gmail.com"},{"name":"balazskreith","email":"balazs.kreith@gmail.com"}],"homepage":"https://github.com/observertc/sfu-monitor-js#readme","bugs":{"url":"https://github.com/observertc/sfu-monitor-js/issues"},"dist":{"shasum":"6874e4b4cdb24a91c5fcfaa68e5487d30c4e1320","tarball":"https://registry.npmjs.org/@observertc/sfu-monitor-js/-/sfu-monitor-js-1.0.0-beta.31.tgz","fileCount":183,"integrity":"sha512-9H/4PalLiLI8zucixxKUHaomf5XyYlxrmGY99N5AbHUVgkI8cciPpErlNPv6OsXPs1QsOGeGbDum7VBY8lE2yw==","signatures":[{"sig":"MEUCIGP58YlKq+vI1Yf7crLgzkisCysDUu6cj1IdRHmYZlHcAiEAtc7bliVJ+/90hjtVKQaskVmYd0ABY11VXa1YLMKEJLE=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":1084841,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiZhkRACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmoAHA//RTfcS8NBqBD3cN1jUlzpgOE2MZiQa8hTDqdA8NBiHdkb74QM\r\ntBUzCqinmJ4SdFuTbCRG3+sCIXJlA3HaNO7+VkiWx1RnLYpfgYMLQzsNpJ3q\r\nCCF8uEP1NLryD6O9sVw0HLWbM3ze69DxCQ+yQt1xaqqqURBknhMoFQd//xuL\r\nsX5xNAbe8Tm8yOQs6tKpz3P1UJFEa2HSlihe3XyeV7lG+pE0iMQIxn9CRrJ+\r\n2jj1e5/VAASodxwzXF5trWXGTeh3osu3ggUBG66NhufvX5KjoZZdLnP36Wlj\r\nN8lGwftLhqRjThsTks5AdJXfHEfyA48hx/r2vbo41Epk6D9XKSY7UEixhb1F\r\nwjSCBfbWnBSGJsd3cj1rl/ERpd4cE8/ecZ8zso+ZL7OSTECBUg7R/I2B1c8K\r\nHar+qOWhm8Ngp1Da1V1alvXidEEe08ZI4kIz86H93VuHYimjbzEn/gWNXWtC\r\n9YCk0hkA2f3JsitHJkc01Pk6zZD9cE0Sy8nUmDD8UQsYu6GQobAIIViOsbL5\r\nZnjStp+rmKA7yWxf2TlK3ikoESNQ72PTlD5UbOdigMqkw7/U6muUt4YOx3jm\r\nKGjfxiRSA0Ox5/QitLCuR8bMw6I0PdkXRaA1jVTG0dMNM6sEWb2Jc5lL7BmL\r\nC34Jd++rVVUtgMtfNDY4+5fxP92U7ERR2v0=\r\n=VUcc\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","types":"lib/index.d.ts","engines":{"node":">=10"},"gitHead":"a6a60e833d25f063179ca3a7ec779dd989820685","scripts":{"lint":"eslint -c .eslintrc.js src/*","test":"jest --config jest.config.js --runInBand","build":"tsc","format":"prettier --write \"src/**/*.ts\"","prepare":"npm run build","version":"npm run format && git add -A src","preversion":"npm run lint","postversion":"git push && git push --tags","prepublishOnly":"npm test && npm run lint"},"_npmUser":{"name":"balazskreith","email":"balazs.kreith@gmail.com"},"repository":{"url":"git+https://github.com/observertc/sfu-monitor-js.git","type":"git"},"_npmVersion":"6.14.16","description":"ObserveRTC SFU Integration Core Library","directories":{},"_nodeVersion":"14.19.1","dependencies":{"ws":"^8.5.0","uuid":"^8.3.2","bowser":"^2.11.0","loglevel":"^1.8.0","@types/ws":"^8.5.3","js-base64":"^3.7.2","js-sha256":"^0.9.0","protobufjs":"^6.11.2","@types/uuid":"^8.3.4","@types/events":"^3.0.0","@observertc/schemas":"^2.0.0-beta.61"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.5.0","eslint":"^8.12.0","ts-jest":"^27.1.4","bufferutil":"^4.0.6","typescript":"^4.6.3","@types/jest":"^27.4.0","utf-8-validate":"^5.0.9","@typescript-eslint/parser":"^5.18.0","@typescript-eslint/eslint-plugin":"^5.18.0"},"_npmOperationalInternal":{"tmp":"tmp/sfu-monitor-js_1.0.0-beta.31_1650858257363_0.7746961027836494","host":"s3://npm-registry-packages"},"deprecated":"Package no longer supported. Contact Support at https://www.npmjs.com/support for more info."},"1.0.0-beta.32":{"name":"@observertc/sfu-monitor-js","version":"1.0.0-beta.32","keywords":["webrtc","getStats","observertc","sfu","integration"],"author":{"name":"Balazs Kreith"},"license":"Apache-2.0","_id":"@observertc/sfu-monitor-js@1.0.0-beta.32","maintainers":[{"name":"pallab.gain","email":"pallab.gain@gmail.com"},{"name":"balazskreith","email":"balazs.kreith@gmail.com"}],"homepage":"https://github.com/observertc/sfu-monitor-js#readme","bugs":{"url":"https://github.com/observertc/sfu-monitor-js/issues"},"dist":{"shasum":"1d4623c4b2f89155b28284851cf4fb0a25b3060a","tarball":"https://registry.npmjs.org/@observertc/sfu-monitor-js/-/sfu-monitor-js-1.0.0-beta.32.tgz","fileCount":183,"integrity":"sha512-aHrJmQXMX5knq4+22HbIe3QIoxcqKgmYpMO1SJZP4f5PflNZwqf88Ukpp4nUP0SwoGQVmxqRa6lj6yh3ll47QQ==","signatures":[{"sig":"MEQCIG/McQuIDt9lE5kMunxwsfnbjgpIfQsd7vgVyDzSM8rjAiA3XDhIvH89RXi1wMy9OwPcYvg0utkEJwelADtOqNLonw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":1083580,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiZ+KRACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmps2BAAltUP5Ikap4UcNgXuQweyuUV1X5nesgcZmKcNxSFEcUFPqh+K\r\nL+QcxHniaQ+k+At33DUulg4yKdO6Uf2xDCqiBR8kEyFiJyn3y9vg/RTEHAVk\r\nmCTXqTY1PxeX/jrASUATcBUNW3HGCCWE9sjsagmBIZbmQxQ0TcdAhHq+/tge\r\nT7fRw/nl1HnNaDy0jTKfa/YvPIqu7KopOS3tu3pfs6uIGBgMFlOQCOFYiUjb\r\nnXgHaQAeNiNSinHzey71emB7+1fG7gxI59/BYai4SDs5LLCiT2ljEjE6VDjt\r\ngy1ookGp+/ya5Z4Dm6j44p5/PRWWlKG1HYo9sSd8nvASl//hIcHnuKuIX53q\r\nAvM/WKz95LtIbGpU3dEK8lxjPIin4e8yo1TGRphnA0eHOXLEKXg1m5LOGip0\r\nkoVEWiUMmKVGMVnrUIgBr6vGR8iB9OaQltR0WD9ch7A+y7R1ppq5XShsyfe2\r\nHkmI9rEscAijVrvtXXk4Jv/BHPx+8uEF1M/K8tcF5g3mFjHLxNL626UAuqME\r\nbBuuRHs/xXsJKQahllEhFPhlQI77hUDoPN5Wu2Z+uRGIZP80MMhAVEVNPnvy\r\neeZhQtgOaelt9er4Ow0VFsTXz9sJ8r0fA5vlKnX/Ld633zMH86ew2319iiVS\r\nHSi4z6FQB+0fCwDfF08nlWk9+uRu3IM7RYQ=\r\n=Oz18\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","types":"lib/index.d.ts","engines":{"node":">=10"},"gitHead":"f9cdddd91566168fcb44345cebfce4e6befa158f","scripts":{"lint":"eslint -c .eslintrc.js src/*","test":"jest --config jest.config.js --runInBand","build":"tsc","format":"prettier --write \"src/**/*.ts\"","prepare":"npm run build","version":"npm run format && git add -A src","preversion":"npm run lint","postversion":"git push && git push --tags","prepublishOnly":"npm test && npm run lint"},"_npmUser":{"name":"balazskreith","email":"balazs.kreith@gmail.com"},"repository":{"url":"git+https://github.com/observertc/sfu-monitor-js.git","type":"git"},"_npmVersion":"6.14.16","description":"ObserveRTC SFU Integration Core Library","directories":{},"_nodeVersion":"14.19.1","dependencies":{"ws":"^8.5.0","uuid":"^8.3.2","bowser":"^2.11.0","loglevel":"^1.8.0","@types/ws":"^8.5.3","js-base64":"^3.7.2","js-sha256":"^0.9.0","protobufjs":"^6.11.2","@types/uuid":"^8.3.4","@types/events":"^3.0.0","@observertc/schemas":"^2.0.0-beta.61"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.5.0","eslint":"^8.12.0","ts-jest":"^27.1.4","bufferutil":"^4.0.6","typescript":"^4.6.3","@types/jest":"^27.4.0","utf-8-validate":"^5.0.9","@typescript-eslint/parser":"^5.18.0","@typescript-eslint/eslint-plugin":"^5.18.0"},"_npmOperationalInternal":{"tmp":"tmp/sfu-monitor-js_1.0.0-beta.32_1650975377169_0.15932718049784178","host":"s3://npm-registry-packages"},"deprecated":"Package no longer supported. Contact Support at https://www.npmjs.com/support for more info."},"1.0.0-beta.33":{"name":"@observertc/sfu-monitor-js","version":"1.0.0-beta.33","keywords":["webrtc","getStats","observertc","sfu","integration"],"author":{"name":"Balazs Kreith"},"license":"Apache-2.0","_id":"@observertc/sfu-monitor-js@1.0.0-beta.33","maintainers":[{"name":"pallab.gain","email":"pallab.gain@gmail.com"},{"name":"balazskreith","email":"balazs.kreith@gmail.com"}],"homepage":"https://github.com/observertc/sfu-monitor-js#readme","bugs":{"url":"https://github.com/observertc/sfu-monitor-js/issues"},"dist":{"shasum":"57989a3e3af4dbd2d59313f8023e23667ae31622","tarball":"https://registry.npmjs.org/@observertc/sfu-monitor-js/-/sfu-monitor-js-1.0.0-beta.33.tgz","fileCount":183,"integrity":"sha512-kBXP0lFDYGViVAtBRAfpi9uIRYLBtzRAWYuYdK+3SIlng6vVlAWdbX3KhTCe6CpsGSx0Z2P8cYshQzARWEemIw==","signatures":[{"sig":"MEYCIQDOhTHUbtYHgd++o139cQSQcqu79LDud/klYauGeSquGQIhAPcJlhDO5GhVUIGBQ4/kw29eDRBkez9bWhFwh8lbSHP0","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":1084119,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiZ+UhACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmptPw//XdQXTKjbtRlQZ2604c1szK4+6xJdZ3wuqeRxUjQ7/XrTlHi5\r\ns37wU3CEFz0udak6ktJbQLN6Qnf4CNlCJNwdre9YTPCCEQr5A5ynWJTUst5x\r\nIAr92Bq2SzcnY0sbNkLecA+eOB4IWD/FvJAYjeM77oVnQ6WVVLNH/k/OJoXl\r\nebN9z/F5WphUxRStQDiZWdAUiWX2juqYTWSdvNE4893qSiAWJCxn17lVYMzX\r\nxupEg+UmFXejvAgSqe7Qf0+mZlbqtAAdKdQQkqIeVS0kCwXfxETb/j0SCC/H\r\npXf0lXGF4uR40Q5G3EH9IrafddGmO8lheoXkpTI2Jl5n9HTE8EV8pYrEoblW\r\nr/ji01Wzal1zkzBHDWrrvVTpvCHhrw5WDfFLOB4Zl0ar9BqTdAsKgWRii82c\r\ngzPLwRgg9vF2FQQnijKutLKu9EzkycSEAYDSfS2V9AK+zp57/kYWT63L0bKc\r\n6YU7xqnYKWZ8e0pAV7B7q6/FBS5RNqCDD+F8i72Sc/V/Dk9XR43r1HhVxpa1\r\npfAon1f61Cc30psOaEFOXeOVDmSn++4piKg8kHYEEzwxQceY0eGzI6K9lRqF\r\nUqDlva10GHLP3UCoudu7EDQhSZIgfOMazlp93jooDhyRmaU0v/L7uwesHA8Q\r\nthLHGTCieTWemFi52B3cWYPH67gidgbUWHs=\r\n=MapG\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","types":"lib/index.d.ts","engines":{"node":">=10"},"gitHead":"08ffa0882d203dc30c4d6e80ae8471c5d01985c8","scripts":{"lint":"eslint -c .eslintrc.js src/*","test":"jest --config jest.config.js --runInBand","build":"tsc","format":"prettier --write \"src/**/*.ts\"","prepare":"npm run build","version":"npm run format && git add -A src","preversion":"npm run lint","postversion":"git push && git push --tags","prepublishOnly":"npm test && npm run lint"},"_npmUser":{"name":"balazskreith","email":"balazs.kreith@gmail.com"},"repository":{"url":"git+https://github.com/observertc/sfu-monitor-js.git","type":"git"},"_npmVersion":"6.14.16","description":"ObserveRTC SFU Integration Core Library","directories":{},"_nodeVersion":"14.19.1","dependencies":{"ws":"^8.5.0","uuid":"^8.3.2","bowser":"^2.11.0","loglevel":"^1.8.0","@types/ws":"^8.5.3","js-base64":"^3.7.2","js-sha256":"^0.9.0","protobufjs":"^6.11.2","@types/uuid":"^8.3.4","@types/events":"^3.0.0","@observertc/schemas":"^2.0.0-beta.61"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.5.0","eslint":"^8.12.0","ts-jest":"^27.1.4","bufferutil":"^4.0.6","typescript":"^4.6.3","@types/jest":"^27.4.0","utf-8-validate":"^5.0.9","@typescript-eslint/parser":"^5.18.0","@typescript-eslint/eslint-plugin":"^5.18.0"},"_npmOperationalInternal":{"tmp":"tmp/sfu-monitor-js_1.0.0-beta.33_1650976033292_0.5944535004759666","host":"s3://npm-registry-packages"},"deprecated":"Package no longer supported. Contact Support at https://www.npmjs.com/support for more info."},"1.0.0-beta.34":{"name":"@observertc/sfu-monitor-js","version":"1.0.0-beta.34","keywords":["webrtc","getStats","observertc","sfu","integration"],"author":{"name":"Balazs Kreith"},"license":"Apache-2.0","_id":"@observertc/sfu-monitor-js@1.0.0-beta.34","maintainers":[{"name":"pallab.gain","email":"pallab.gain@gmail.com"},{"name":"balazskreith","email":"balazs.kreith@gmail.com"}],"homepage":"https://github.com/observertc/sfu-monitor-js#readme","bugs":{"url":"https://github.com/observertc/sfu-monitor-js/issues"},"dist":{"shasum":"a3de2b37806826e8c28618caa3d8553ce25d3fc7","tarball":"https://registry.npmjs.org/@observertc/sfu-monitor-js/-/sfu-monitor-js-1.0.0-beta.34.tgz","fileCount":183,"integrity":"sha512-dWm3N6VYr6MJv5h+m3NkAmyq0vlKKwYlzP0PrbEpVBagZVqas3llWLhJANtOmY6vRBHKsJo2uf0E13cP/E/upw==","signatures":[{"sig":"MEUCIQCCPdp+9aJTffJq6e/ODzga/3v3SOOwvYJb6SklBf0CuQIgDwPIs8OpjpbQNwffaF+7C7ZbDUtXH/SbeOMLzfTHLvM=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":1085229,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJieJKTACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmqSZA/8DqzZ98w3ABBJwBQYkELSoUNpiH+063xnVMUTEdK78d5qEtrn\r\nr5b+xXxtmmtgk2wZvsDHW7MCR3Yq5LL7yacCqs3vdMfwYkK5mwCcvaSp1MwZ\r\nY5xdlnGxRYdgGRwmOW13W2KI2AKHJ+XbKneREs+g3NlJac3TbyyQg1F+WdyD\r\nggAXyZ6YFHllmKUSHzAjYcswA24UflHuTg9LG5llzz8demqKY5cc9fcShBn0\r\norlA49qWp/5KQHon6M4zhV7Q7xWvnVDUrvukl3G4IkhXE6O1YXwelMdogphm\r\nqsGHt+Jpii1vqS4vWfFFYyIDuIZ7TGWFRfbQBFRMvS/OzeWf6twxYqdUNNsG\r\nNN17aHacDBg1f+6OlQsfrHTocU7sqdKlhna33mH0eOY5vGeBCUUhZ4CenV5M\r\nhAbNpJswMZSQ3kI1/bumRB4lbdzxS+1zDnkfXafC1hOQJOBkbxB4IAG4gtlF\r\ndxpnFyAktbq3fGbWcUa2WmlEuPxY4eGmrFtz+drb/8QNll7Qu6aohK+I7sDS\r\njQ9d+JrBJtpXYdPtlhW6RGWQCUmNddJDs4k25QTHZi3hiy1kSSPEMYff+8dm\r\nq+OZR3iImzeop27p4csGuNfxyEa9D5T/qxttaVONxGBeFS9pnXNw/Kui36Mh\r\nJFD4W4u+vE1CoMc0m6i+Me9dIqX4+2PmFjs=\r\n=SVkB\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","types":"lib/index.d.ts","engines":{"node":">=10"},"gitHead":"ff194f132a19e41b27d5fcba655bb2b71926d00a","scripts":{"lint":"eslint -c .eslintrc.js src/*","test":"jest --config jest.config.js --runInBand","build":"tsc","format":"prettier --write \"src/**/*.ts\"","prepare":"npm run build","version":"npm run format && git add -A src","preversion":"npm run lint","postversion":"git push && git push --tags","prepublishOnly":"npm test && npm run lint"},"_npmUser":{"name":"balazskreith","email":"balazs.kreith@gmail.com"},"repository":{"url":"git+https://github.com/observertc/sfu-monitor-js.git","type":"git"},"_npmVersion":"6.14.16","description":"ObserveRTC SFU Integration Core Library","directories":{},"_nodeVersion":"14.19.1","dependencies":{"ws":"^8.5.0","uuid":"^8.3.2","bowser":"^2.11.0","loglevel":"^1.8.0","@types/ws":"^8.5.3","js-base64":"^3.7.2","js-sha256":"^0.9.0","protobufjs":"^6.11.2","@types/uuid":"^8.3.4","@types/events":"^3.0.0","@observertc/schemas":"^2.0.1"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.5.0","eslint":"^8.12.0","ts-jest":"^27.1.4","bufferutil":"^4.0.6","typescript":"^4.6.3","@types/jest":"^27.4.0","utf-8-validate":"^5.0.9","@typescript-eslint/parser":"^5.18.0","@typescript-eslint/eslint-plugin":"^5.18.0"},"_npmOperationalInternal":{"tmp":"tmp/sfu-monitor-js_1.0.0-beta.34_1652069011191_0.7515105339218457","host":"s3://npm-registry-packages"},"deprecated":"Package no longer supported. Contact Support at https://www.npmjs.com/support for more info."},"1.0.0":{"name":"@observertc/sfu-monitor-js","version":"1.0.0","keywords":["webrtc","getStats","observertc","sfu","integration"],"author":{"name":"Balazs Kreith"},"license":"Apache-2.0","_id":"@observertc/sfu-monitor-js@1.0.0","maintainers":[{"name":"pallab.gain","email":"pallab.gain@gmail.com"},{"name":"balazskreith","email":"balazs.kreith@gmail.com"}],"homepage":"https://github.com/observertc/sfu-monitor-js#readme","bugs":{"url":"https://github.com/observertc/sfu-monitor-js/issues"},"dist":{"shasum":"f22df099e8ff6b9723f9748ce7e2e08c4bf626b8","tarball":"https://registry.npmjs.org/@observertc/sfu-monitor-js/-/sfu-monitor-js-1.0.0.tgz","fileCount":183,"integrity":"sha512-i31MnjNscseSf09ttRX0EOwNJz38jqHUwNhVeDqhY33FhnbcnCEzfRRWWYTKObEieqw23qaeCqHsdW7OfI6EAQ==","signatures":[{"sig":"MEUCIQD4WZGQHbvwb/pt4muqWttrM/n5PihlW2SnvEplQPHnCAIgC2IPpmhQS/CRiTijjRCSzKdcv4al5l+8JLGY50bmKjk=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":1085221,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjPqsSACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmquAA//dyiFt3ynN5OnSjo6oL/FofEnrMLazd2i6iSXd7OSL3jVNWLf\r\nb85xRbMFq4zUUIbomKU/KTSO94NNX213vlxvmb53dUYwlIE7F30ToOvU4kpT\r\nwcsmn80UuSrxqm0BKXzibXXt5DqDYF5HJFoN4BPO3+UUwsnUkOKFJXe42BQN\r\nNRGgII7LwkLoEs0ZeqEx/3rjws961igqMuSxuhmq86skugXLZW1nT9arL882\r\nkCEkjcASnt+FpEecZ5qj05Kvy2JcdhNwtP+WOsnk3j1BJTYsnpLnaMT803e9\r\nM+QGx7LL4jv4PIt3TtFOY11X5jkYTBCbKe8U6qZbE1nmecd14M+3xOBDm7dm\r\n7HwdR8UTRQzFaKtGb0bEMHxJ97dRtdKnaB1Drd5mNGdlP/Z0591oGZa01YEF\r\n45apEgNsqKVJd6/yEPV4Ez8Py038GGQD0vaC9jnTFjCTpCoWk3X53xO3M4nE\r\n+e0vq+Yh+TTmzXeSKjAULgAVcoaQz0cG89C5smMmoWTwiGCDhJ8h1VCfnpo0\r\ngRTk758OAYbF+AAGyHmgNAVlFuDpor6P9G5qQYnhteX6N3Xttaxv7MTYqNdS\r\n4YAwwEtUAyQ2oce0uecAMrio/2COQMEvwMZ6tW+YdACdaDf0XaOKQ3QDztYx\r\nqOkgd8WUjgYkHSuCxxhewSG4IkFFhH1G4DA=\r\n=79Y2\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","types":"lib/index.d.ts","engines":{"node":">=10"},"gitHead":"67e21bfc239b5baf9aae7c8e281c99ecbfc5f56a","scripts":{"lint":"eslint -c .eslintrc.js src/*","test":"jest --config jest.config.js --runInBand","build":"tsc","format":"prettier --write \"src/**/*.ts\"","prepare":"npm run build","version":"npm run format && git add -A src","preversion":"npm run lint","postversion":"git push && git push --tags","prepublishOnly":"npm test && npm run lint"},"_npmUser":{"name":"balazskreith","email":"balazs.kreith@gmail.com"},"repository":{"url":"git+https://github.com/observertc/sfu-monitor-js.git","type":"git"},"_npmVersion":"6.14.17","description":"ObserveRTC SFU Integration Core Library","directories":{},"_nodeVersion":"14.20.1","dependencies":{"ws":"^8.5.0","uuid":"^8.3.2","bowser":"^2.11.0","loglevel":"^1.8.0","@types/ws":"^8.5.3","js-base64":"^3.7.2","js-sha256":"^0.9.0","protobufjs":"^6.11.2","@types/uuid":"^8.3.4","@types/events":"^3.0.0","@observertc/schemas":"^2.1.9"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.5.0","eslint":"^8.12.0","ts-jest":"^27.1.4","bufferutil":"^4.0.6","typescript":"^4.6.3","@types/jest":"^27.4.0","utf-8-validate":"^5.0.9","@typescript-eslint/parser":"^5.18.0","@typescript-eslint/eslint-plugin":"^5.18.0"},"_npmOperationalInternal":{"tmp":"tmp/sfu-monitor-js_1.0.0_1665051410399_0.012149959840092484","host":"s3://npm-registry-packages"},"deprecated":"Package no longer supported. Contact Support at https://www.npmjs.com/support for more info."},"1.0.0-SNAPSHOT.c13eb781ee226d4904c49df315722b4a332b8681":{"name":"@observertc/sfu-monitor-js","version":"1.0.0-SNAPSHOT.c13eb781ee226d4904c49df315722b4a332b8681","keywords":["webrtc","getStats","observertc","sfu","integration"],"author":{"name":"Balazs Kreith"},"license":"Apache-2.0","_id":"@observertc/sfu-monitor-js@1.0.0-SNAPSHOT.c13eb781ee226d4904c49df315722b4a332b8681","maintainers":[{"name":"pallab.gain","email":"pallab.gain@gmail.com"},{"name":"balazskreith","email":"balazs.kreith@gmail.com"}],"homepage":"https://github.com/observertc/sfu-monitor-js#readme","bugs":{"url":"https://github.com/observertc/sfu-monitor-js/issues"},"dist":{"shasum":"2d2872f3cd7f776e615bb34a28bf22fd298969d5","tarball":"https://registry.npmjs.org/@observertc/sfu-monitor-js/-/sfu-monitor-js-1.0.0-SNAPSHOT.c13eb781ee226d4904c49df315722b4a332b8681.tgz","fileCount":223,"integrity":"sha512-Az8CDiGuEBwbg1sCnxWAcHWfn3XJtDF2HBwL4jYOR9j9xvPtevQ8dlDuKP53Npx9Es0Sy3gUTWW3vLNyFS5j/w==","signatures":[{"sig":"MEQCIHtNe7L9w6G8keTPL9XzI5I+qIpjiJWIHQFjRXdfn7GwAiAULVyPtuPjRvWirORtXpLIQ8E85qEXUvnmx5Z40eaO8w==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":1679339,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjaMdwACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmqwNQ//RRX3k/eptSMEK2I8+KhrfxXofBoehTfqRNaB7oD2zCFJhjmc\r\nMlCSm/UApXvB4xdo3oISIsWZ4MhwqG2EivwWudEvD4NTSpPMdwz45Qx9LnRT\r\nqGNgMsX5/G5e6E6Al+VKto6TgYjLsXvgfAtnmnULoAEToMgIs/LjvxV39gOF\r\n7AlTB0jLY7JWIVOQOb/br7EN9mpE70njdTwfXTqyw5kaOHbmv5Dd89gZM80z\r\n3jCP23Ql5xM6QNbKSymnSOXJvZuQzFV0MjTe41N9/iKh/YecRZ4ohWQyOe3w\r\nAAt9G/fq/AFCoQymVPdn7UggF3dUd1gePWD2PWIiE2CBpziV27jIY9xrVfjP\r\nzWa2ODMYYMg01rW2BlUPO5HFHxwX/Biy78OBLXtW3ec/nXK9kHKxl72/uCni\r\nUIw0Nmjhy213EDRSb+PSTSNCYF1UncrhDtDeWa7OzIaa1uMB2AiS0SjaQ81m\r\nNVGdL7hKc2weK81McgIdbQWGT9lQyqYsom2iOup6IW0XGozhjXGNsdZ1FRhI\r\nvLYZnjWgUOdqDYC+8ZjuARKN1oHrRuAP1eP1WDUqphNG7mH9TT8mv9VS9the\r\nvP5hWIk5uxvOA3ZgC0RUDXpAFB10KrYKpO68e0AP3VltlFSKC3GpV2/Aq+mo\r\n32IE9cK1i9ZS33ckMtssUCwS2Ui6HdmjNM8=\r\n=iSN9\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","types":"lib/index.d.ts","engines":{"node":">=10"},"gitHead":"c13eb781ee226d4904c49df315722b4a332b8681","scripts":{"lint":"eslint -c .eslintrc.js src/*","test":"jest --config jest.config.js --runInBand","build":"tsc","prepare":"npm run build","preversion":"npm run lint","prepublishOnly":"npm test && npm run lint"},"_npmUser":{"name":"balazskreith","email":"balazs.kreith@gmail.com"},"repository":{"url":"git+https://github.com/observertc/sfu-monitor-js.git","type":"git"},"_npmVersion":"6.14.17","description":"ObserveRTC SFU Integration Core Library","directories":{},"_nodeVersion":"14.20.1","dependencies":{"ws":"^8.5.0","uuid":"^8.3.2","loglevel":"^1.8.0","@types/ws":"^8.5.3","js-base64":"^3.7.2","js-sha256":"^0.9.0","protobufjs":"^6.11.2","@types/uuid":"^8.3.4","@types/events":"^3.0.0","@observertc/schemas":"^2.2.0-SNAPSHOT.7208c09b8e6eaff4c4b3a07666f21eec96ef96f0"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.5.0","eslint":"^8.12.0","ts-jest":"^27.1.4","bufferutil":"^4.0.6","typescript":"^4.6.3","@types/jest":"^27.4.0","utf-8-validate":"^5.0.9","@typescript-eslint/parser":"^5.18.0","@typescript-eslint/eslint-plugin":"^5.18.0"},"_npmOperationalInternal":{"tmp":"tmp/sfu-monitor-js_1.0.0-SNAPSHOT.c13eb781ee226d4904c49df315722b4a332b8681_1667811184739_0.01291310255848832","host":"s3://npm-registry-packages"},"deprecated":"Package no longer supported. Contact Support at https://www.npmjs.com/support for more info."},"1.1.0-SNAPSHOT.9d0a328efdbeed0c4b1210c16eb760b8176411c1":{"name":"@observertc/sfu-monitor-js","version":"1.1.0-SNAPSHOT.9d0a328efdbeed0c4b1210c16eb760b8176411c1","keywords":["webrtc","getStats","observertc","sfu","integration"],"author":{"name":"Balazs Kreith"},"license":"Apache-2.0","_id":"@observertc/sfu-monitor-js@1.1.0-SNAPSHOT.9d0a328efdbeed0c4b1210c16eb760b8176411c1","maintainers":[{"name":"pallab.gain","email":"pallab.gain@gmail.com"},{"name":"balazskreith","email":"balazs.kreith@gmail.com"}],"homepage":"https://github.com/observertc/sfu-monitor-js#readme","bugs":{"url":"https://github.com/observertc/sfu-monitor-js/issues"},"dist":{"shasum":"33c696d656ff7f5040f25c620fb59c042248ff92","tarball":"https://registry.npmjs.org/@observertc/sfu-monitor-js/-/sfu-monitor-js-1.1.0-SNAPSHOT.9d0a328efdbeed0c4b1210c16eb760b8176411c1.tgz","fileCount":223,"integrity":"sha512-6/JaAyi063+c+fRt6NdVb2TwRKb0v4i/hN4zwcvntIotCgAqaTKs/eLQlW51gEiOaZyzTSTUs7R7eCdipOC+JA==","signatures":[{"sig":"MEUCIDJWeS6LXanWoRi3zNCOEYjz5GtyJGqftDaiuOc3sUgcAiEAxFcYykJA/W898SItmjhFIoZ9jxsaai3ti2e93Z7tvRk=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":1679339,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjaMftACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmo/WA//WP6djduT1xYDf0Aq8INAboCTjc5saFbDtDaH5yXMPtvwHP2P\r\nBuEEodzOl7aukC5I+eJAv0iqHl1JubyG9HiNlUBP5SkTQ02/X+3v/pxFFgYx\r\n5dfm8sWI9MDr1cxGYgFJWcx/tYZHtXElfl3v6v9eJ8bbgFknuavI6mtMXc3T\r\nnnQIO3I8w1T8ZySdjx4VkSvbeH63fRj0hwiuJxpzT0IspkCPISvRos5kjnpr\r\n2yEF/aXyvmyBz3JvgjBOmjrS7224XqOL8kkUEJllF7c6oxRF1upCCIgo8V2e\r\neUaUCvVLp86kIgowuPczI0wA5/E0LknHyDdDJWmE4f9E9raPPEyAP7ojNeY7\r\n71yKfEdlk8YGL688lgsubsvoIUN9IbDdUYSkUcZnURvOt+2tqaT6i52MaaPi\r\nYrvCDVZehiMNRDxUKLU8NkwJzBVw79SPIymGGF0SDVQro204nqzbTHUb4aZD\r\nYYoZXwPIO6MgDIytWeWS3rP3IawbWoX0FOqO0NhOLxnxpP8YR58mNHNU2n0b\r\nFR7lLHRSR5eIq0gZ52vCUwQfGcMtRXFKjensyo4SGf0UL0PAvoC6jaO302sz\r\nRaGTxs0hyMV7+zsUrY/xJoMGeU+GsGw5ivR6M/3JGK+mvezMIUfaFiWoS1xq\r\nCw9sYLZhPJ5gRgX93iPcfxYPN3NdLjyiOo8=\r\n=vsh4\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","types":"lib/index.d.ts","engines":{"node":">=10"},"gitHead":"9d0a328efdbeed0c4b1210c16eb760b8176411c1","scripts":{"lint":"eslint -c .eslintrc.js src/*","test":"jest --config jest.config.js --runInBand","build":"tsc","prepare":"npm run build","preversion":"npm run lint","prepublishOnly":"npm test && npm run lint"},"_npmUser":{"name":"balazskreith","email":"balazs.kreith@gmail.com"},"repository":{"url":"git+https://github.com/observertc/sfu-monitor-js.git","type":"git"},"_npmVersion":"6.14.17","description":"ObserveRTC SFU Integration Core Library","directories":{},"_nodeVersion":"14.20.1","dependencies":{"ws":"^8.5.0","uuid":"^8.3.2","loglevel":"^1.8.0","@types/ws":"^8.5.3","js-base64":"^3.7.2","js-sha256":"^0.9.0","protobufjs":"^6.11.2","@types/uuid":"^8.3.4","@types/events":"^3.0.0","@observertc/schemas":"^2.2.0-SNAPSHOT.7208c09b8e6eaff4c4b3a07666f21eec96ef96f0"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.5.0","eslint":"^8.12.0","ts-jest":"^27.1.4","bufferutil":"^4.0.6","typescript":"^4.6.3","@types/jest":"^27.4.0","utf-8-validate":"^5.0.9","@typescript-eslint/parser":"^5.18.0","@typescript-eslint/eslint-plugin":"^5.18.0"},"_npmOperationalInternal":{"tmp":"tmp/sfu-monitor-js_1.1.0-SNAPSHOT.9d0a328efdbeed0c4b1210c16eb760b8176411c1_1667811309680_0.32761137322221745","host":"s3://npm-registry-packages"},"deprecated":"Package no longer supported. Contact Support at https://www.npmjs.com/support for more info."},"1.1.0-SNAPSHOT.37061208e126f0b434e178df6e6ce78ba4ced0ba":{"name":"@observertc/sfu-monitor-js","version":"1.1.0-SNAPSHOT.37061208e126f0b434e178df6e6ce78ba4ced0ba","keywords":["webrtc","getStats","observertc","sfu","integration"],"author":{"name":"Balazs Kreith"},"license":"Apache-2.0","_id":"@observertc/sfu-monitor-js@1.1.0-SNAPSHOT.37061208e126f0b434e178df6e6ce78ba4ced0ba","maintainers":[{"name":"pallab.gain","email":"pallab.gain@gmail.com"},{"name":"balazskreith","email":"balazs.kreith@gmail.com"}],"homepage":"https://github.com/observertc/sfu-monitor-js#readme","bugs":{"url":"https://github.com/observertc/sfu-monitor-js/issues"},"dist":{"shasum":"592bac9971020d49b048875fac0d54f9d11bfab0","tarball":"https://registry.npmjs.org/@observertc/sfu-monitor-js/-/sfu-monitor-js-1.1.0-SNAPSHOT.37061208e126f0b434e178df6e6ce78ba4ced0ba.tgz","fileCount":223,"integrity":"sha512-k+8O1Ln4O3h0koWCm+NW//Fw1/7PzyANByQCzA7yqvQ+ChafzKkZfZlf3ueCqIaNm2Uk2r6EJDEUk9IEdhguVA==","signatures":[{"sig":"MEQCIDQh8Ia3UkozGVcQhwP9V8m4iysTQWwuo7TYiJ13X64PAiBi+WdnDtYTKPnkEXLR8x2t3bIabUgeLhDnI+XIFLR1ZQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":1683649,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjaM5dACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmqq/g//X0HpYAQa8S+u/vmaUZ/Dvpo1e+aaplsR9QKuXQoFfzLDjuAK\r\n5wNotQGgSxL/V4vWT32anax8fkuvgCavY8Y713jYhCCNv1Ph/UbT7iZ/yA9d\r\nvRVu6oVtcCs6oLtwdOjbxmi3TXRKPnX0eIHTtAHPeEi1uBV22N7EUCLauVOc\r\nJ+b9y5GNCEqayqWOvgm8DDuXtTwnlOJiDT7C0hFlsQ/U5KVK2/2QbnAFGYbK\r\n0T5+2QcMnxWVBTx44W4rQfpxSv+O5+pHR5XmLTqv095SOj1YmDG9nC9+89M6\r\nWSQugTN97aQSyPkQfn6jRtPyl5eQujme0AJdPlRRzNetZCG3oJIVGNbZf7AL\r\nIhKnMvtA4xDkpHA9IrL9v9bEUjP5IrQ+wYQqIHdjVWPs+8L0ZReIDgsQxl+c\r\neH3t6kd6jk6Y3oYJMFX9OmLlfDUkusUsv1rFpzapSOFgC7fszcucFfsG806Z\r\nzaCZ0WSpBjPB6C05x34Ym5ERqNaVPK+ZcFDVlAyeIpqQhjeG9TF8b+WNYH9f\r\nwStUXj7uPLLgmS9/csg3amkcfcPcWZOhcleZqvt3jPhPKv/6Q94H2+IBvTvw\r\n630TyPOy5t9R1eJa8rFFKyPiOYhO9N1e8BKiZZbUJSQ0YwMR1yPXQjlHKRy5\r\n35TWLBuAfkniHgBTQXH6Th4IoKv4AlJTqEo=\r\n=TaSi\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","types":"lib/index.d.ts","engines":{"node":">=10"},"gitHead":"37061208e126f0b434e178df6e6ce78ba4ced0ba","scripts":{"lint":"eslint -c .eslintrc.js src/*","test":"jest --config jest.config.js --runInBand","build":"tsc","prepare":"npm run build","preversion":"npm run lint","prepublishOnly":"npm test && npm run lint"},"_npmUser":{"name":"balazskreith","email":"balazs.kreith@gmail.com"},"repository":{"url":"git+https://github.com/observertc/sfu-monitor-js.git","type":"git"},"_npmVersion":"6.14.17","description":"ObserveRTC SFU Integration Core Library","directories":{},"_nodeVersion":"14.20.1","dependencies":{"ws":"^8.5.0","uuid":"^8.3.2","loglevel":"^1.8.0","@types/ws":"^8.5.3","js-base64":"^3.7.2","js-sha256":"^0.9.0","protobufjs":"^6.11.2","@types/uuid":"^8.3.4","@types/events":"^3.0.0","@observertc/schemas":"^2.2.0-SNAPSHOT.7208c09b8e6eaff4c4b3a07666f21eec96ef96f0"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.5.0","eslint":"^8.12.0","ts-jest":"^27.1.4","bufferutil":"^4.0.6","typescript":"^4.6.3","@types/jest":"^27.4.0","utf-8-validate":"^5.0.9","@typescript-eslint/parser":"^5.18.0","@typescript-eslint/eslint-plugin":"^5.18.0"},"_npmOperationalInternal":{"tmp":"tmp/sfu-monitor-js_1.1.0-SNAPSHOT.37061208e126f0b434e178df6e6ce78ba4ced0ba_1667812957557_0.9298606201508417","host":"s3://npm-registry-packages"},"deprecated":"Package no longer supported. Contact Support at https://www.npmjs.com/support for more info."},"1.1.0-SNAPSHOT.912297b4acedb72edd0d71a5a0c070e77463d5be":{"name":"@observertc/sfu-monitor-js","version":"1.1.0-SNAPSHOT.912297b4acedb72edd0d71a5a0c070e77463d5be","keywords":["webrtc","getStats","observertc","sfu","integration"],"author":{"name":"Balazs Kreith"},"license":"Apache-2.0","_id":"@observertc/sfu-monitor-js@1.1.0-SNAPSHOT.912297b4acedb72edd0d71a5a0c070e77463d5be","maintainers":[{"name":"pallab.gain","email":"pallab.gain@gmail.com"},{"name":"balazskreith","email":"balazs.kreith@gmail.com"}],"homepage":"https://github.com/observertc/sfu-monitor-js#readme","bugs":{"url":"https://github.com/observertc/sfu-monitor-js/issues"},"dist":{"shasum":"073f476313319254baed8595025e8d112c95e534","tarball":"https://registry.npmjs.org/@observertc/sfu-monitor-js/-/sfu-monitor-js-1.1.0-SNAPSHOT.912297b4acedb72edd0d71a5a0c070e77463d5be.tgz","fileCount":223,"integrity":"sha512-chPbh4Ocj26t8lHg5rVFOX4l7eEw3Lc0o1/S2tjgxTD+m//55gqSibI+Z9ewvKm4wyVMvImBZj0TfcMtPoLTfA==","signatures":[{"sig":"MEUCIQDIf86iBl/L5tKvX72bJUz/EMPa4Vxk3zJ9QCCKupqcxwIgD7Tkpxs6CnTXPiKQ+9ZBQKq6g4RCqMz8EVUwh0klXqY=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":1683474,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjaOQYACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmqLvhAAiIzDTW2ZO9giW9NX74guWUsKamUEJFnTQAWMKs8nQF2ylInE\r\nAQXfccQgusSMj/CnGAmdqpoXRp5enJ/5UyVpXnOMpqJLsZgAty1IP1njDlsW\r\nqGNcNZCNHAD5k3MU9fqoDWv0PYOilk0LstaES1Px/52mbievwyRWkgHg9Wu5\r\n0so/AQ1pW9EfRspcxjizLtyHYferna3N0+/PVG8Zh/mARs4ONWZQney0p6Db\r\nDBH3KkVbfA6xCCyR9gPSY6ugsdyNTcLbWElPqbgt+R9JBz62KdmGdSenKQhf\r\nkUTgnZ+s27Kc7teIetkpF9JTPPsXLDRFrJcqX9gyZ5YayKhleTgZkOc56kiW\r\nsNUJ8uVXIOonwf/COEkmpkYyX8Qz30CcjnusdevvD+z4IshExfgqPqdA7Ehg\r\n7ar8abO6hOPiNh9nTwdHZ7g5oUcLHWGsDGeYi0Xlvsz5ri9B9KdFywTQyltA\r\nxqrDJJXfz4LI6l6LkiLKA/OQM7jhefSAPOt6xpUGbaTmb52T2cm3irWgAqkv\r\nrzbRfPZHz+ZimRjw3xloXYIWCzOFaNULy+RR6WrSPH5Vwh0wxv+7L1MjA3vT\r\nVcRclDINGziiLkuhxd8V1BG6wgWFLRMyqBmOQHuuuvB+6uE4cmwa51CxUJpq\r\nj3DIyV8Z4NXrXCU7hgrY+y/3XgEic3jVsds=\r\n=Wg/Q\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","types":"lib/index.d.ts","engines":{"node":">=10"},"gitHead":"912297b4acedb72edd0d71a5a0c070e77463d5be","scripts":{"lint":"eslint -c .eslintrc.js src/*","test":"jest --config jest.config.js --runInBand","build":"tsc","prepare":"npm run build","preversion":"npm run lint","prepublishOnly":"npm test && npm run lint"},"_npmUser":{"name":"balazskreith","email":"balazs.kreith@gmail.com"},"repository":{"url":"git+https://github.com/observertc/sfu-monitor-js.git","type":"git"},"_npmVersion":"6.14.17","description":"ObserveRTC SFU Integration Core Library","directories":{},"_nodeVersion":"14.20.1","dependencies":{"ws":"^8.5.0","uuid":"^8.3.2","loglevel":"^1.8.0","@types/ws":"^8.5.3","js-base64":"^3.7.2","js-sha256":"^0.9.0","protobufjs":"^6.11.2","@types/uuid":"^8.3.4","@types/events":"^3.0.0","@observertc/schemas":"^2.2.0-SNAPSHOT.7208c09b8e6eaff4c4b3a07666f21eec96ef96f0"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.5.0","eslint":"^8.12.0","ts-jest":"^27.1.4","bufferutil":"^4.0.6","typescript":"^4.6.3","@types/jest":"^27.4.0","utf-8-validate":"^5.0.9","@typescript-eslint/parser":"^5.18.0","@typescript-eslint/eslint-plugin":"^5.18.0"},"_npmOperationalInternal":{"tmp":"tmp/sfu-monitor-js_1.1.0-SNAPSHOT.912297b4acedb72edd0d71a5a0c070e77463d5be_1667818519991_0.3796192420747593","host":"s3://npm-registry-packages"},"deprecated":"Package no longer supported. Contact Support at https://www.npmjs.com/support for more info."},"1.1.0-SNAPSHOT.f61135a086092a1b418ffc2c55e376690a107c17":{"name":"@observertc/sfu-monitor-js","version":"1.1.0-SNAPSHOT.f61135a086092a1b418ffc2c55e376690a107c17","keywords":["webrtc","getStats","observertc","sfu","integration"],"author":{"name":"Balazs Kreith"},"license":"Apache-2.0","_id":"@observertc/sfu-monitor-js@1.1.0-SNAPSHOT.f61135a086092a1b418ffc2c55e376690a107c17","maintainers":[{"name":"pallab.gain","email":"pallab.gain@gmail.com"},{"name":"balazskreith","email":"balazs.kreith@gmail.com"}],"homepage":"https://github.com/observertc/sfu-monitor-js#readme","bugs":{"url":"https://github.com/observertc/sfu-monitor-js/issues"},"dist":{"shasum":"e5b7078a0c5023ca7d598595e88b8a59184386da","tarball":"https://registry.npmjs.org/@observertc/sfu-monitor-js/-/sfu-monitor-js-1.1.0-SNAPSHOT.f61135a086092a1b418ffc2c55e376690a107c17.tgz","fileCount":223,"integrity":"sha512-eNpCh6FjN06LewsGel55wmEBlk3bJwhmcr1J4DQFe7VFyScdI9oqXy1iXa6OCM4wAOhGtQ1RnrYLFgccLhqPTg==","signatures":[{"sig":"MEYCIQDCwGKBnyjyPQL7Zr2p74dLRPu7fjGT/03ut/dmc8WJVAIhAPpwOn5bhenI6xZAS5Fdxj/ERPeuo4ORtOnhdBOynot5","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":1684100,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjaO8iACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmp4NA/7BBqBwUwyiXZegA4FlRJFQvgxaHIXGL0+ngi+pANFKG5XeTBi\r\nC16M63j9jtovQ6im1RTokpEVjrn72CkH2r5g9CDkvsuh17dMNuJ6EMW/9V0J\r\nY/IOyvl7juRMQpdgzn2KAPpfAHhZYhlNH01FXYGNLyIDJRehTYv7zVA1eZA0\r\nie8k9KfhxsVyyobd00QFIqgw3LWTO+bzXDFBzt2kZUDuXNWAKMkxwj03qnK+\r\niD46c+4GfkV079C6MtXwev7wCuyxjXu0+gY/vdXsvkT1ktAa1VN0799cnP9S\r\n0lvwDzwkpcEEmqcA1ZrleQf0z1E70wMVq/m2YPJ1xqnJHTJ4/ZBRkbQXIJ59\r\nq03RP/qq+Zjt7wpjRsudIpTByTQiuCLa3sodcpdJRvXNCii2jJnhA2B7t41B\r\nAOuI2/ddKyfRdOtZNqhs6M4f7lrRfJ06QunGQbXpca4jRepnk/pnw5Dw0CK5\r\nQvPmRSSTcYxinDp8NYp/o8IC/1GLCG8HY4CTVIUrrgfzvOzPfGtdezJRvUIj\r\nQDZhMEcOC9VHlTu4kksnya8zbr25XdVEalZH9di4exArovoD7Rj8xwi3d2TQ\r\nDP15trMFCdIRsv5SmPQTzfru30nYD9KpRAHfsUou6n/zRtK8SMetBaE2ojLZ\r\n5uNAtGnVJboz30hVnrACagzw4HdbKRjWstM=\r\n=SiJF\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","types":"lib/index.d.ts","engines":{"node":">=10"},"gitHead":"f61135a086092a1b418ffc2c55e376690a107c17","scripts":{"lint":"eslint -c .eslintrc.js src/*","test":"jest --config jest.config.js --runInBand","build":"tsc","prepare":"npm run build","preversion":"npm run lint","prepublishOnly":"npm test && npm run lint"},"_npmUser":{"name":"balazskreith","email":"balazs.kreith@gmail.com"},"repository":{"url":"git+https://github.com/observertc/sfu-monitor-js.git","type":"git"},"_npmVersion":"6.14.17","description":"ObserveRTC SFU Integration Core Library","directories":{},"_nodeVersion":"14.20.1","dependencies":{"ws":"^8.5.0","uuid":"^8.3.2","loglevel":"^1.8.0","@types/ws":"^8.5.3","js-base64":"^3.7.2","js-sha256":"^0.9.0","protobufjs":"^6.11.2","@types/uuid":"^8.3.4","@types/events":"^3.0.0","@observertc/schemas":"^2.2.0-SNAPSHOT.7208c09b8e6eaff4c4b3a07666f21eec96ef96f0"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.5.0","eslint":"^8.12.0","ts-jest":"^27.1.4","bufferutil":"^4.0.6","typescript":"^4.6.3","@types/jest":"^27.4.0","utf-8-validate":"^5.0.9","@typescript-eslint/parser":"^5.18.0","@typescript-eslint/eslint-plugin":"^5.18.0"},"_npmOperationalInternal":{"tmp":"tmp/sfu-monitor-js_1.1.0-SNAPSHOT.f61135a086092a1b418ffc2c55e376690a107c17_1667821346687_0.13448961232764645","host":"s3://npm-registry-packages"},"deprecated":"Package no longer supported. Contact Support at https://www.npmjs.com/support for more info."},"1.1.0-SNAPSHOT.b342b9e54b6f87291cc6f53e0396872375c5a24e":{"name":"@observertc/sfu-monitor-js","version":"1.1.0-SNAPSHOT.b342b9e54b6f87291cc6f53e0396872375c5a24e","keywords":["webrtc","getStats","observertc","sfu","integration"],"author":{"name":"Balazs Kreith"},"license":"Apache-2.0","_id":"@observertc/sfu-monitor-js@1.1.0-SNAPSHOT.b342b9e54b6f87291cc6f53e0396872375c5a24e","maintainers":[{"name":"pallab.gain","email":"pallab.gain@gmail.com"},{"name":"balazskreith","email":"balazs.kreith@gmail.com"}],"homepage":"https://github.com/observertc/sfu-monitor-js#readme","bugs":{"url":"https://github.com/observertc/sfu-monitor-js/issues"},"dist":{"shasum":"8cf7230c3d28c0ff2ac091ebb436f43589b710b6","tarball":"https://registry.npmjs.org/@observertc/sfu-monitor-js/-/sfu-monitor-js-1.1.0-SNAPSHOT.b342b9e54b6f87291cc6f53e0396872375c5a24e.tgz","fileCount":223,"integrity":"sha512-XXpN6l5Y7qAndrg1iCXNzHPp8+GhSy6bGwEHKRH6c9b/zUeSlAPSYtCM2PTx6sUC8y1l+oqoICz3MuZI5Ks8XA==","signatures":[{"sig":"MEQCIEYTc67wyHrfJnQQodPa+A1gx/CC0t2oFvBF5pL83oriAiAuzkonaHWXWz6fbn5cXIiBxW37YpcMH7CE0rqnT1NKBA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":1684293,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjaO/iACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmrCHQ//c8/V/NrKW3BqcyaO+4OKG38KaVBixkgcUeSfyHeIe6y33NYG\r\nCT/L/Q24y0qVAnylLZfoq+lc4XKTkmNcD/j7owNUmoPl/nJDWrBFyRO1LraM\r\nJXv/RjnWTeUWKJPyP5zWCDuqkiBjeYDi5TigqwVE5tVs/yegPuh32Zwfdk1Q\r\nWLPSqH1eBzzJo9yCM4adCvt2re9Dh5/KU35ktG2mjaCVS5m4CmkZo+XDss5z\r\nZTSUHgMmHOpwOdDkP17KnIFV7P8wpkinveDH8Jy3vHPVYIGSsGIb78/LU1Md\r\nU5hT4JwM1awLN1DnYPxqS0Cu+igbVSAB5dAb7PWWut56la306dvMsFwTBSRj\r\n79YHMBFL5OyqXIXCVmGEUOP4U7M+umT1JJWNRkdF/ucSJIya3gFEUSyuH15y\r\nAoRQol+zkCnm6W0hlmpHKCSjcAApWv9IG7kfOQTnyIYSZIZsQqJeNucHaDm+\r\nqjgssaga2VLF4z0KTlL7GZQ5NzJNsqxdS6+p0+C3zt1ARI72x1xYldb8O6tE\r\nVBVzmgZAFQnRwei9Z81vqbngUsOWesZsSbaNkYA/fU6ewwDh1FGv6D7xxIV5\r\nP+NlreTulCfYWNyfEMthqSGQ6sFBtRedA78pGTLNIhlPV2DW53kceRnYFQqD\r\nLga3Ko9Df+XSUjV0zgyDUr1vzu7RG/fLdzY=\r\n=uzxs\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","types":"lib/index.d.ts","engines":{"node":">=10"},"gitHead":"b342b9e54b6f87291cc6f53e0396872375c5a24e","scripts":{"lint":"eslint -c .eslintrc.js src/*","test":"jest --config jest.config.js --runInBand","build":"tsc","prepare":"npm run build","preversion":"npm run lint","prepublishOnly":"npm test && npm run lint"},"_npmUser":{"name":"balazskreith","email":"balazs.kreith@gmail.com"},"repository":{"url":"git+https://github.com/observertc/sfu-monitor-js.git","type":"git"},"_npmVersion":"6.14.17","description":"ObserveRTC SFU Integration Core Library","directories":{},"_nodeVersion":"14.20.1","dependencies":{"ws":"^8.5.0","uuid":"^8.3.2","loglevel":"^1.8.0","@types/ws":"^8.5.3","js-base64":"^3.7.2","js-sha256":"^0.9.0","protobufjs":"^6.11.2","@types/uuid":"^8.3.4","@types/events":"^3.0.0","@observertc/schemas":"^2.2.0-SNAPSHOT.7208c09b8e6eaff4c4b3a07666f21eec96ef96f0"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.5.0","eslint":"^8.12.0","ts-jest":"^27.1.4","bufferutil":"^4.0.6","typescript":"^4.6.3","@types/jest":"^27.4.0","utf-8-validate":"^5.0.9","@typescript-eslint/parser":"^5.18.0","@typescript-eslint/eslint-plugin":"^5.18.0"},"_npmOperationalInternal":{"tmp":"tmp/sfu-monitor-js_1.1.0-SNAPSHOT.b342b9e54b6f87291cc6f53e0396872375c5a24e_1667821538437_0.37527657936455827","host":"s3://npm-registry-packages"},"deprecated":"Package no longer supported. Contact Support at https://www.npmjs.com/support for more info."},"1.1.0-SNAPSHOT.52f76d15b7c951c8ea81c0e1396afdc6142bb0cf":{"name":"@observertc/sfu-monitor-js","version":"1.1.0-SNAPSHOT.52f76d15b7c951c8ea81c0e1396afdc6142bb0cf","keywords":["webrtc","getStats","observertc","sfu","integration"],"author":{"name":"Balazs Kreith"},"license":"Apache-2.0","_id":"@observertc/sfu-monitor-js@1.1.0-SNAPSHOT.52f76d15b7c951c8ea81c0e1396afdc6142bb0cf","maintainers":[{"name":"pallab.gain","email":"pallab.gain@gmail.com"},{"name":"balazskreith","email":"balazs.kreith@gmail.com"}],"homepage":"https://github.com/observertc/sfu-monitor-js#readme","bugs":{"url":"https://github.com/observertc/sfu-monitor-js/issues"},"dist":{"shasum":"2e2d361007f169ff7d61899b46756d6a200331ed","tarball":"https://registry.npmjs.org/@observertc/sfu-monitor-js/-/sfu-monitor-js-1.1.0-SNAPSHOT.52f76d15b7c951c8ea81c0e1396afdc6142bb0cf.tgz","fileCount":223,"integrity":"sha512-ghcPMaAIKdTb2vsO/BuzLX72Gag5yqEWYhhxkV4uKLk4M3KhqdBqxz3Iy9L0ROvvUlgbmuvfBsvwFZWmp4UKUg==","signatures":[{"sig":"MEQCIBL2efKxNwgngM6gxyUgU5/ENqKwvcz7JZWoniueV6s6AiB2lJKW6Cy3z2qgIRZnBnlUSIBJJUMJd0d9tfiNA/nHWg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":1684291,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjaPY3ACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmrj7A//fwKKVIlumPgWGibqi94d/RUtOZOMOnlQktNQZk8ic1sEbTNc\r\nuhs/l0RbbOhvyN1oXLxnl58QvEC9AVwjg3aXXH/vP6zWToU2cMwmx6+zguoH\r\n04LMYvYShA1u+iYn76QWmYWAQCvVqXW2ts9u4/VjroJ0IJMnGhxHAMhcFl16\r\n80XYxxLKbjFeW0qrBHvGQvfgRo5eLj4sujlLwV+ngqJXO0Z78nQgQgmmB/Q1\r\nvBsFqPej03fxHgYmbiPKIV38D3ayLZoo4qQNPAPnboU7KO1QEOHmy2JWjQxK\r\ne0uG81SfKw+mShy3oEP+mmtNY7qNjfsLt2IWKrrBpKFnF0pvUK3WSsHpmU25\r\nc5ktMWNUkCr7vJ5ZZPGi4fk8vuUTXGRk9wGpjL3c6LnZQHcH2DP2ckv14wUh\r\n36EfCtpStKkNFh9p2nnYAs5ZEoZbzH2n2//gqLYIs/nRW7KMRvVrvCate7f7\r\no2JzjBp0lskuzd5/nv+U24pp5nDsl2VvJECUzc5KNZ9UDQKYNYd31QLIz4c7\r\nROqPntLNMAUFuUIXv9eaosEu1Nxnow+xC4SMseuLGmSpznasXuiO6Y0HM60A\r\n2TSWUshSCqvjRvg7HYvG4eBdplRyORrXkuRjLYKKZfswezNGadefnIVH6RHT\r\nXMa/dr+kZ/fZxQqa9JYLXystT7zQQVpVAbc=\r\n=u7wR\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","types":"lib/index.d.ts","engines":{"node":">=10"},"gitHead":"52f76d15b7c951c8ea81c0e1396afdc6142bb0cf","scripts":{"lint":"eslint -c .eslintrc.js src/*","test":"jest --config jest.config.js --runInBand","build":"tsc","prepare":"npm run build","preversion":"npm run lint","prepublishOnly":"npm test && npm run lint"},"_npmUser":{"name":"balazskreith","email":"balazs.kreith@gmail.com"},"repository":{"url":"git+https://github.com/observertc/sfu-monitor-js.git","type":"git"},"_npmVersion":"6.14.17","description":"ObserveRTC SFU Integration Core Library","directories":{},"_nodeVersion":"14.20.1","dependencies":{"ws":"^8.5.0","uuid":"^8.3.2","loglevel":"^1.8.0","@types/ws":"^8.5.3","js-base64":"^3.7.2","js-sha256":"^0.9.0","protobufjs":"^6.11.2","@types/uuid":"^8.3.4","@types/events":"^3.0.0","@observertc/schemas":"^2.2.0-SNAPSHOT.7208c09b8e6eaff4c4b3a07666f21eec96ef96f0"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.5.0","eslint":"^8.12.0","ts-jest":"^27.1.4","bufferutil":"^4.0.6","typescript":"^4.6.3","@types/jest":"^27.4.0","utf-8-validate":"^5.0.9","@typescript-eslint/parser":"^5.18.0","@typescript-eslint/eslint-plugin":"^5.18.0"},"_npmOperationalInternal":{"tmp":"tmp/sfu-monitor-js_1.1.0-SNAPSHOT.52f76d15b7c951c8ea81c0e1396afdc6142bb0cf_1667823159311_0.8021655482166039","host":"s3://npm-registry-packages"},"deprecated":"Package no longer supported. Contact Support at https://www.npmjs.com/support for more info."},"1.1.0-SNAPSHOT.82219d71b2c08124c344bad8c3ec0577e7bfff3d":{"name":"@observertc/sfu-monitor-js","version":"1.1.0-SNAPSHOT.82219d71b2c08124c344bad8c3ec0577e7bfff3d","keywords":["webrtc","getStats","observertc","sfu","integration"],"author":{"name":"Balazs Kreith"},"license":"Apache-2.0","_id":"@observertc/sfu-monitor-js@1.1.0-SNAPSHOT.82219d71b2c08124c344bad8c3ec0577e7bfff3d","maintainers":[{"name":"pallab.gain","email":"pallab.gain@gmail.com"},{"name":"balazskreith","email":"balazs.kreith@gmail.com"}],"homepage":"https://github.com/observertc/sfu-monitor-js#readme","bugs":{"url":"https://github.com/observertc/sfu-monitor-js/issues"},"dist":{"shasum":"ab17c4bde9b34dc9c0af127404a0c34d7abb0a9d","tarball":"https://registry.npmjs.org/@observertc/sfu-monitor-js/-/sfu-monitor-js-1.1.0-SNAPSHOT.82219d71b2c08124c344bad8c3ec0577e7bfff3d.tgz","fileCount":223,"integrity":"sha512-87Fcb96AJFGbeVXMVdYHIKgT+YATwyFzD0sDLIKgQe9DhHr++Z5GjvccQqSlQb09HckPFgdplS1KcWCVfzaUqA==","signatures":[{"sig":"MEQCIHR14JhWrRRH1/dd5FAvjgLbhbpSHmjFvrugmRRSttEWAiBSsRzdN60yRXgKPRT0BkFJj8MNeirk7xAxh61w6LC/Xg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":1684739,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjaPw5ACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmosQw//QFDCuNUrRXbsKkujMkQET1VfScnBpEndcj+5mVyoWEXnUAIP\r\n27eaEkwPC0sPQTK+IQktcHeNu51lB79fFnpBD+ZI4HGU/Uf8qQOq/SDhAZKo\r\nCJIq8+YB0U4920q9iZb7kqoERMdwn7+T8LkPL71kBucmGaymfhOCNS1Q8Pqk\r\nunv0LkxsfUdKS1xX+bJHFBCy8o3K4fXKVK79nB4z7Y4jTuS8fHuKy6XUo5bX\r\ndV75u36QJ90qD/uhrigfmP5uaM2PeI+PRkyMgoytg9Q84UU+vwUOUY1af9hy\r\nnJA4ZHfhi3fVusMCbRuaAd+bhe0aOLmI6xnEikLC0ggdcAf2pwcuFSC12L5Z\r\no3606w1c73BZaiit9wIy4keLaxt5Xxt4puUGE54RUqCrpz9KIw/uN9bz5His\r\nuT891D7YwiE3KaycNoxBQdptj94rpEy/wlmq5HEOi/lGgDiOSibXcC1bAjbP\r\ndIGIxWTDQWST0+ib9ReaDsR130M/xsonZ74OqjruvYYF/KkkXcCHZ1Z4uNNR\r\nw/Pq4ued5MI5acyQi45XJ0HSyz2+wpc/mNVcp4bc5kCLu0pBqaYFzJIoM315\r\nChZGBWMmQG4F01rJfo810oH0lEGJG4vNzNnmTzRIsfCUjo8PSTwae8TKru6m\r\nqL1MONztsVa+Tg44zyf/7Xlq/76jTPAXVK4=\r\n=YImd\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","types":"lib/index.d.ts","engines":{"node":">=10"},"gitHead":"82219d71b2c08124c344bad8c3ec0577e7bfff3d","scripts":{"lint":"eslint -c .eslintrc.js src/*","test":"jest --config jest.config.js --runInBand","build":"tsc","prepare":"npm run build","preversion":"npm run lint","prepublishOnly":"npm test && npm run lint"},"_npmUser":{"name":"balazskreith","email":"balazs.kreith@gmail.com"},"repository":{"url":"git+https://github.com/observertc/sfu-monitor-js.git","type":"git"},"_npmVersion":"6.14.17","description":"ObserveRTC SFU Integration Core Library","directories":{},"_nodeVersion":"14.20.1","dependencies":{"ws":"^8.5.0","uuid":"^8.3.2","loglevel":"^1.8.0","@types/ws":"^8.5.3","js-base64":"^3.7.2","js-sha256":"^0.9.0","protobufjs":"^6.11.2","@types/uuid":"^8.3.4","@types/events":"^3.0.0","@observertc/schemas":"^2.2.0-SNAPSHOT.7208c09b8e6eaff4c4b3a07666f21eec96ef96f0"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.5.0","eslint":"^8.12.0","ts-jest":"^27.1.4","bufferutil":"^4.0.6","typescript":"^4.6.3","@types/jest":"^27.4.0","utf-8-validate":"^5.0.9","@typescript-eslint/parser":"^5.18.0","@typescript-eslint/eslint-plugin":"^5.18.0"},"_npmOperationalInternal":{"tmp":"tmp/sfu-monitor-js_1.1.0-SNAPSHOT.82219d71b2c08124c344bad8c3ec0577e7bfff3d_1667824697170_0.36569096937870404","host":"s3://npm-registry-packages"},"deprecated":"Package no longer supported. Contact Support at https://www.npmjs.com/support for more info."},"1.1.0-SNAPSHOT.bfaa4d8e2da170d992fe1ea4920d4e659e0226b1":{"name":"@observertc/sfu-monitor-js","version":"1.1.0-SNAPSHOT.bfaa4d8e2da170d992fe1ea4920d4e659e0226b1","keywords":["webrtc","getStats","observertc","sfu","integration"],"author":{"name":"Balazs Kreith"},"license":"Apache-2.0","_id":"@observertc/sfu-monitor-js@1.1.0-SNAPSHOT.bfaa4d8e2da170d992fe1ea4920d4e659e0226b1","maintainers":[{"name":"pallab.gain","email":"pallab.gain@gmail.com"},{"name":"balazskreith","email":"balazs.kreith@gmail.com"}],"homepage":"https://github.com/observertc/sfu-monitor-js#readme","bugs":{"url":"https://github.com/observertc/sfu-monitor-js/issues"},"dist":{"shasum":"81772013ee6c3da8955d0e35a0f13ba1086530ac","tarball":"https://registry.npmjs.org/@observertc/sfu-monitor-js/-/sfu-monitor-js-1.1.0-SNAPSHOT.bfaa4d8e2da170d992fe1ea4920d4e659e0226b1.tgz","fileCount":223,"integrity":"sha512-cPihZ4ANAflLdFPZb/wpANVoOKCAONUNnR1Uv4aAgh1pYYDCP90DMtG3HD3c04VAuXCchGFB4xsL8VlpvcwV+w==","signatures":[{"sig":"MEUCIQChVexKkQvjYfLgNrBiXWrvg2fmzZ1Oj4Ulh3sPr50PEQIgHqoHXO6LijDAY3VCzqA6FI6IciPf0g4aw4tmbR9SUHc=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":1684771,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjaP8VACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmp5Mw//fHuwjQLK2Faj9lYOVX2g0rUtmbAwuwGu9+qLJrsQhXZx3pwc\r\nVeAj/RCkXABooYzuSKFeK3Oru8v+LQPMe1DLv2AKvD7pspSqZx2PO/URyOQ/\r\nlMK/cnQDEQ6HIMFYzL48fztULc1bShoje+gc23YdZL8G/uJc0RVdbZ2TotfG\r\n1rBc+zBgRJ3maT3v7Jk4Gx3yJ7gFZYdUTlzhUGNKEJFpZQNM7gredbysbYj1\r\naB7iaoA5CdelYE286+lnBQzGx7+5BMVQQotZKe55j1zAry7OX7/kJ0rKgP8G\r\nFBUfU7tNY63WJTX+t0qVBGYAdvMmPbNw2fQDwd/bEFPq2vVZ2uL/mevZH96u\r\n9xCQ+fLtXeU/B5HOibdQUsEUI0ljnJSaUmibOh536+UouQsXJ6lLAq8Sg3Hw\r\nukt6CSXKKysg1bDkJyxET6yIRujYRDZxPspb+rqQAZPsG9xqt4DC78+LBx18\r\nl/veb3Roq0oDN5NzMMW+oW1x1UThbgeaP5Is6H5hM7MtAv6BXUpudUE9LYxQ\r\nCFREwIJBS39TXl3yUwnPyRRppKmWE53jCBlc6g9tQvc39GkBbYmL51UXDBaf\r\ntUnD/c8p/w05j4iJxSGR5DFYnOJDyDGQl8/rhz8djwBvtT5s0laMZGL0c78G\r\n1R08j8EtlJKuHa5bjPuCaUCiwRkC4FNLuTg=\r\n=/JHq\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","types":"lib/index.d.ts","engines":{"node":">=10"},"gitHead":"bfaa4d8e2da170d992fe1ea4920d4e659e0226b1","scripts":{"lint":"eslint -c .eslintrc.js src/*","test":"jest --config jest.config.js --runInBand","build":"tsc","prepare":"npm run build","preversion":"npm run lint","prepublishOnly":"npm test && npm run lint"},"_npmUser":{"name":"balazskreith","email":"balazs.kreith@gmail.com"},"repository":{"url":"git+https://github.com/observertc/sfu-monitor-js.git","type":"git"},"_npmVersion":"6.14.17","description":"ObserveRTC SFU Integration Core Library","directories":{},"_nodeVersion":"14.20.1","dependencies":{"ws":"^8.5.0","uuid":"^8.3.2","loglevel":"^1.8.0","@types/ws":"^8.5.3","js-base64":"^3.7.2","js-sha256":"^0.9.0","protobufjs":"^6.11.2","@types/uuid":"^8.3.4","@types/events":"^3.0.0","@observertc/schemas":"^2.2.0-SNAPSHOT.7208c09b8e6eaff4c4b3a07666f21eec96ef96f0"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.5.0","eslint":"^8.12.0","ts-jest":"^27.1.4","bufferutil":"^4.0.6","typescript":"^4.6.3","@types/jest":"^27.4.0","utf-8-validate":"^5.0.9","@typescript-eslint/parser":"^5.18.0","@typescript-eslint/eslint-plugin":"^5.18.0"},"_npmOperationalInternal":{"tmp":"tmp/sfu-monitor-js_1.1.0-SNAPSHOT.bfaa4d8e2da170d992fe1ea4920d4e659e0226b1_1667825429636_0.6662953753458372","host":"s3://npm-registry-packages"},"deprecated":"Package no longer supported. Contact Support at https://www.npmjs.com/support for more info."},"1.1.0-SNAPSHOT.8d0c3acceae446ee456a7ab8fdf38e00bf6aba39":{"name":"@observertc/sfu-monitor-js","version":"1.1.0-SNAPSHOT.8d0c3acceae446ee456a7ab8fdf38e00bf6aba39","keywords":["webrtc","getStats","observertc","sfu","integration"],"author":{"name":"Balazs Kreith"},"license":"Apache-2.0","_id":"@observertc/sfu-monitor-js@1.1.0-SNAPSHOT.8d0c3acceae446ee456a7ab8fdf38e00bf6aba39","maintainers":[{"name":"pallab.gain","email":"pallab.gain@gmail.com"},{"name":"balazskreith","email":"balazs.kreith@gmail.com"}],"homepage":"https://github.com/observertc/sfu-monitor-js#readme","bugs":{"url":"https://github.com/observertc/sfu-monitor-js/issues"},"dist":{"shasum":"a132e9f977a3720bc9e1d70f4fb575bd8dbd8b50","tarball":"https://registry.npmjs.org/@observertc/sfu-monitor-js/-/sfu-monitor-js-1.1.0-SNAPSHOT.8d0c3acceae446ee456a7ab8fdf38e00bf6aba39.tgz","fileCount":226,"integrity":"sha512-K7jqmevnPLVrW4CS8W0J/TqaUnf9HI3LpY+kmGPiN5ugN6894EMk6ta4nwSMtxDy3zBZ95mebwGcclOPzLRMTg==","signatures":[{"sig":"MEUCIQChbghf9AQnn4AzSGTWBiZMFNUDhjUwoyJGyOFGpgm1XAIgQraPzRy4E23QULDdV2lpjlcfoBmkGh542d+vAFjI52Y=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":1667546,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjeKhAACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmpSKw/+P7KR/R9pjiII0Fpibcx9RnarIs/CC76WZ02yo+9eN/J4OinY\r\nfccWBU5fgmPCMX8MGYvUwfjkCQ6eitNfh13asbjJDdOQ1GaOPUY8zh1gMj1J\r\nG4250KWEPEBbCu9mXmdXknskO162IXgn3o47E0M3dDK5eiIxVzXp31WQP5Ay\r\nGBeIkiQ6rV0D1am42AzXqZtmwijRe+P88Ni6albS3K8OV9lZ2wbJvBHG7thD\r\nH7cNTPdU79CKiagk4Vhm0fOkk69FYbCYsKEeYV2QgvHKbCzn/zrMrYKRvwQe\r\nA49UgTw41GarfCV8JBJQuE9tdAvghsmmJzhUz4mhj0ZVC7NdVvifQLlVN8Cp\r\n1AYmcxlm9fUtWJDYKjvXE/DeBfbJblmd3XFkE9lTPN6F6VkHR+9Jqmr0qiTq\r\n1Bkce2r8eQbnyGsyUdy5vOPW0tfl3j12AYTsPCa0p+cU+4cuRuIj1KHDVlpF\r\nkVI+pORk7H+eEC1NUE5leNMCaGW2G2kdabMkLfR2e0+fTplBUVr7/8Tv0mca\r\nwFYRlEeJPE6/RxRrUQ4YD00PvFuOqWLpthWwLq8BdtArRRKfQHwA9R5iFsr+\r\n53HdmGsZ8DU2Tq3dVwqOSAs/YBFgZmZORmnnpYVudihl3iVHy5okmaGlOaIT\r\nyYWgUuoI78odaDbwHCHCdOF6Rqm43iAkHvM=\r\n=Ie3G\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","types":"lib/index.d.ts","engines":{"node":">=10"},"gitHead":"8d0c3acceae446ee456a7ab8fdf38e00bf6aba39","scripts":{"lint":"eslint -c .eslintrc.js src/*","test":"jest --config jest.config.js --runInBand","build":"tsc","prepare":"npm run build","preversion":"npm run lint","prepublishOnly":"npm test && npm run lint"},"_npmUser":{"name":"balazskreith","email":"balazs.kreith@gmail.com"},"repository":{"url":"git+https://github.com/observertc/sfu-monitor-js.git","type":"git"},"_npmVersion":"6.14.17","description":"ObserveRTC SFU Integration Core Library","directories":{},"_nodeVersion":"14.20.1","dependencies":{"ws":"^8.5.0","uuid":"^8.3.2","loglevel":"^1.8.0","@types/ws":"^8.5.3","js-base64":"^3.7.2","js-sha256":"^0.9.0","protobufjs":"^6.11.2","@types/uuid":"^8.3.4","@types/events":"^3.0.0","@observertc/schemas":"^2.2.0-SNAPSHOT.7208c09b8e6eaff4c4b3a07666f21eec96ef96f0"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.5.0","eslint":"^8.12.0","ts-jest":"^27.1.4","bufferutil":"^4.0.6","typescript":"^4.6.3","@types/jest":"^27.4.0","utf-8-validate":"^5.0.9","@typescript-eslint/parser":"^5.18.0","@typescript-eslint/eslint-plugin":"^5.18.0"},"_npmOperationalInternal":{"tmp":"tmp/sfu-monitor-js_1.1.0-SNAPSHOT.8d0c3acceae446ee456a7ab8fdf38e00bf6aba39_1668851776539_0.34746214650574436","host":"s3://npm-registry-packages"},"deprecated":"Package no longer supported. Contact Support at https://www.npmjs.com/support for more info."},"1.1.0-SNAPSHOT.e43a5db70e915b5a1f6028cb5c0930ad740d4a07":{"name":"@observertc/sfu-monitor-js","version":"1.1.0-SNAPSHOT.e43a5db70e915b5a1f6028cb5c0930ad740d4a07","keywords":["webrtc","getStats","observertc","sfu","integration"],"author":{"name":"Balazs Kreith"},"license":"Apache-2.0","_id":"@observertc/sfu-monitor-js@1.1.0-SNAPSHOT.e43a5db70e915b5a1f6028cb5c0930ad740d4a07","maintainers":[{"name":"pallab.gain","email":"pallab.gain@gmail.com"},{"name":"balazskreith","email":"balazs.kreith@gmail.com"}],"homepage":"https://github.com/observertc/sfu-monitor-js#readme","bugs":{"url":"https://github.com/observertc/sfu-monitor-js/issues"},"dist":{"shasum":"9aa4086f44f557a6c954f78b9c3e5a058c245875","tarball":"https://registry.npmjs.org/@observertc/sfu-monitor-js/-/sfu-monitor-js-1.1.0-SNAPSHOT.e43a5db70e915b5a1f6028cb5c0930ad740d4a07.tgz","fileCount":226,"integrity":"sha512-n36xIHN8zSAO7hFrp1nzy9EnUDBontF6q3lXRa8YCasVATy/vl04+qlWN0n5im47xhKL+sW1jUPqqKoyWD1mmQ==","signatures":[{"sig":"MEQCIEz/clXjmIu6FBwcHHTYLaqRZDplYTCFG3GYwKhdtaRIAiBIWF3w+aQ0TBQXVuKI6SumKISjlP01xQTyRPYJ1M+J+g==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":1667475,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjeQmMACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmp+SQ/+IBbi/KHZ/4QYNUkr4bnHxwhwoJybIofYgGep8uqr200rjvVj\r\nmPoAHGNsPDELpXzS5gK7H+GgXwIfFrtQdN5Kx5cIWu9H1WrsS6gmlGI5BKHF\r\ni62HFLzFkeuHShmzNELtlcq9NNP2d5PEaYegXjP9D2nP9ukXBaKRkSC2Ljw4\r\nF9VZ5HsmVW8TwXEQJuNPuW/ZRB7hV9uVvCKbnQqxQwgm9K/+IO1zXObhlEm3\r\nyJxXGmsJrG04z7A1bFe3AdiXNCbKSlEhRsmpJGoNECi56OKYjq+UhIsdznA5\r\nBGI02ME4G7HjpDgaj5RakRqJkNg2GbQzaV0HrTOb96bAkZ6v3IH+mR7ICB+n\r\nqIZQ9+qFILxg/ov3XDNRuVfX4Nrbm0C5oZUSMpNxHjVpzwZ7+AxVEdbXcspb\r\nHb4GwcI3GNw/pqf+svDwR8jExaxBIkG489XazCJzQIMldaWKgYC0+/siY/sN\r\nhk43680GjjZOsIHTeAYpjDUiFvfCaToVRK9Vw/EdR1K/LFbto/hcig+l/VSN\r\nvkUXF5TQ0dpdIRYCD19pCjjI2pexdi/UPiXqB+Q4TenrKOg7Nx9SCEsg8dlK\r\ndGTuG1/hP30vmrKiOpZa4uuHCcERz39XnynAVd/+i8UDUJkcv2UK+grrViFU\r\n3eCt2w0ZBja4rTQjcWpC+EA9axs2LQ3tvCA=\r\n=v+AR\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","types":"lib/index.d.ts","engines":{"node":">=10"},"gitHead":"e43a5db70e915b5a1f6028cb5c0930ad740d4a07","scripts":{"lint":"eslint -c .eslintrc.js src/*","test":"jest --config jest.config.js --runInBand","build":"tsc","prepare":"npm run build","preversion":"npm run lint","prepublishOnly":"npm test && npm run lint"},"_npmUser":{"name":"balazskreith","email":"balazs.kreith@gmail.com"},"repository":{"url":"git+https://github.com/observertc/sfu-monitor-js.git","type":"git"},"_npmVersion":"6.14.17","description":"ObserveRTC SFU Integration Core Library","directories":{},"_nodeVersion":"14.20.1","dependencies":{"ws":"^8.5.0","uuid":"^8.3.2","loglevel":"^1.8.0","@types/ws":"^8.5.3","js-base64":"^3.7.2","js-sha256":"^0.9.0","protobufjs":"^6.11.2","@types/uuid":"^8.3.4","@types/events":"^3.0.0","@observertc/schemas":"^2.2.0-SNAPSHOT.7208c09b8e6eaff4c4b3a07666f21eec96ef96f0"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.5.0","eslint":"^8.12.0","ts-jest":"^27.1.4","bufferutil":"^4.0.6","typescript":"^4.6.3","@types/jest":"^27.4.0","utf-8-validate":"^5.0.9","@typescript-eslint/parser":"^5.18.0","@typescript-eslint/eslint-plugin":"^5.18.0"},"_npmOperationalInternal":{"tmp":"tmp/sfu-monitor-js_1.1.0-SNAPSHOT.e43a5db70e915b5a1f6028cb5c0930ad740d4a07_1668876684496_0.6918208845431302","host":"s3://npm-registry-packages"},"deprecated":"Package no longer supported. Contact Support at https://www.npmjs.com/support for more info."},"1.1.0-SNAPSHOT.63b9b161019e516659a14c41929e2446984ef955":{"name":"@observertc/sfu-monitor-js","version":"1.1.0-SNAPSHOT.63b9b161019e516659a14c41929e2446984ef955","keywords":["webrtc","getStats","observertc","sfu","integration"],"author":{"name":"Balazs Kreith"},"license":"Apache-2.0","_id":"@observertc/sfu-monitor-js@1.1.0-SNAPSHOT.63b9b161019e516659a14c41929e2446984ef955","maintainers":[{"name":"pallab.gain","email":"pallab.gain@gmail.com"},{"name":"balazskreith","email":"balazs.kreith@gmail.com"}],"homepage":"https://github.com/observertc/sfu-monitor-js#readme","bugs":{"url":"https://github.com/observertc/sfu-monitor-js/issues"},"dist":{"shasum":"66e427151eaf38fbe6719cff502826acff2cfb92","tarball":"https://registry.npmjs.org/@observertc/sfu-monitor-js/-/sfu-monitor-js-1.1.0-SNAPSHOT.63b9b161019e516659a14c41929e2446984ef955.tgz","fileCount":226,"integrity":"sha512-KW3dBvZoZuznZAo4tPrIk1M/pgbMpn+J5MVzS3JtZ5c4uQ0RnbykkQLZ7U/6qHGWlBHQJD/0glCM6wP1OwygJw==","signatures":[{"sig":"MEUCIQDIvjAAyUpQ6rutZr3JCtA9Vjyi6Bgu+V3BlNCi3qkTQQIgR6QLynXX7hVot0wZB/F5NQXPiK6+F+r/KyTTfV/b+54=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":1667468,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjel7AACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmpGLw/+KuDT6DmlLnPCdnTAp/Ee/3ij/Zrg/RC7fZYpAmE4Fj/NoAT1\r\nEfNtiMMD19XA7aR21/GIxeHBfqIKroJQcHZsRJYewyPszb5/SOfbGSFDCx5c\r\n9X9mDvKISGA1YQIPVGmGXN9QkErVFjaB+/yQFv+vyXPuJ7by6ETIx8fDBTJs\r\nQ0dX5crCdWF9eSJ7xigV/+U6kfT76wpR/edRPDirTedlXCgymEt5T4ETs40Z\r\nTvTZj/Ju18/AsKAEqtjgKAJIIKV7mNgcmXecsrsoTLMXMGniZqrKpUo1G7CK\r\nkIDCabb8mtYNv2tZljT1x2+zb9Ffw0DnLA8JdNM4EfbBqLq2i3diklO6Xmtc\r\neYIEv4lVdjE/vuJuoJCd17lw/rAkCw3tPWzupgMiDSKkBaAvKxx1BFMmMI/Z\r\no9zqZyNOP4O3mbD1xQRrR7qlwDRMw+8xoiKnkTPwp+HKO1Cq4y/wfm9PUtya\r\nCIfMlyHhrl7L42rZXKRkXSENoGHsSk889BnDeYDMO3BP/AvyEXQrqWRocfvT\r\nzn5PO8pv0malpc53BC7OLpQEWXQ/ZdCUXr51wy/nNHGvXvtQrb20yTaKwZc4\r\ntsjVCdvvM10rkxJgtVlMMoHpsM7Tly2fPb4pxcZqO/n60Fkt7XZjy5NQZnpK\r\nVOnB0qDVf6JGS2roLrSBsR7TLMEhHUBaav0=\r\n=86n4\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","types":"lib/index.d.ts","engines":{"node":">=10"},"gitHead":"63b9b161019e516659a14c41929e2446984ef955","scripts":{"lint":"eslint -c .eslintrc.js src/*","test":"jest --config jest.config.js --runInBand","build":"tsc","prepare":"npm run build","preversion":"npm run lint","prepublishOnly":"npm test && npm run lint"},"_npmUser":{"name":"balazskreith","email":"balazs.kreith@gmail.com"},"repository":{"url":"git+https://github.com/observertc/sfu-monitor-js.git","type":"git"},"_npmVersion":"6.14.17","description":"ObserveRTC SFU Integration Core Library","directories":{},"_nodeVersion":"14.20.1","dependencies":{"ws":"^8.5.0","uuid":"^8.3.2","loglevel":"^1.8.0","@types/ws":"^8.5.3","js-base64":"^3.7.2","js-sha256":"^0.9.0","protobufjs":"^6.11.2","@types/uuid":"^8.3.4","@types/events":"^3.0.0","@observertc/schemas":"^2.2.0-SNAPSHOT.7208c09b8e6eaff4c4b3a07666f21eec96ef96f0"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.5.0","eslint":"^8.12.0","ts-jest":"^27.1.4","bufferutil":"^4.0.6","typescript":"^4.6.3","@types/jest":"^27.4.0","utf-8-validate":"^5.0.9","@typescript-eslint/parser":"^5.18.0","@typescript-eslint/eslint-plugin":"^5.18.0"},"_npmOperationalInternal":{"tmp":"tmp/sfu-monitor-js_1.1.0-SNAPSHOT.63b9b161019e516659a14c41929e2446984ef955_1668964031805_0.9923860974735452","host":"s3://npm-registry-packages"},"deprecated":"Package no longer supported. Contact Support at https://www.npmjs.com/support for more info."},"1.1.0-SNAPSHOT.6cc2393dac024914f3302cab1b427bb461c9a190":{"name":"@observertc/sfu-monitor-js","version":"1.1.0-SNAPSHOT.6cc2393dac024914f3302cab1b427bb461c9a190","keywords":["webrtc","getStats","observertc","sfu","integration"],"author":{"name":"Balazs Kreith"},"license":"Apache-2.0","_id":"@observertc/sfu-monitor-js@1.1.0-SNAPSHOT.6cc2393dac024914f3302cab1b427bb461c9a190","maintainers":[{"name":"pallab.gain","email":"pallab.gain@gmail.com"},{"name":"balazskreith","email":"balazs.kreith@gmail.com"}],"homepage":"https://github.com/observertc/sfu-monitor-js#readme","bugs":{"url":"https://github.com/observertc/sfu-monitor-js/issues"},"dist":{"shasum":"f0dc650cc4743c876027d6c6112a46c3454a143e","tarball":"https://registry.npmjs.org/@observertc/sfu-monitor-js/-/sfu-monitor-js-1.1.0-SNAPSHOT.6cc2393dac024914f3302cab1b427bb461c9a190.tgz","fileCount":226,"integrity":"sha512-CiGd9oP9NPcVpFJxf8trvJm8b8x/7EUPBAuw28IsZ/WnleUldiItEiSquMGHqjzYIAUDcAsF8g/LoKRKFQDwnQ==","signatures":[{"sig":"MEYCIQCGXKsWZ2CLOEMDCEPl7CVJjvu+AatsgJh6EoT8+y7kBQIhAMKGfwOXLqnDYaUOMh/vDdEY40c5NlPy+c/lm3+OH95c","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":1667992,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjf2/fACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmo8xg/9FccPqeilOke4E7fUAiurEGn9qYDXFEvIJJwZACPm84FGsYdj\r\n+bZWD3/1uDTxul8/mCWi7m+vbep1IL10LSz4mDkLL1tMtXcqm/Y9fPnc68DY\r\n81TbnZfpEv51WKT5HQOIDAMXhJ/X9tSotG6I5Q858nOjs6PcasNPmIgvGLAC\r\nEbUsTX/jN6vUwOxN0lQhfzkLDwBKK6sKVvYmQI6p2Zfda8896qWFX7royVPu\r\n4wHgMzctpop/CppHSNZ3uZfaS6JfIyej9xPRzeFmPIU3jc/DUj8ObY5ckLk8\r\nXCAV3ivLuLX0UXDSWSxqWcvcmxmKQyXZH/Lk+Na9gg/GmekVe3cyvQGsL+LI\r\nHSYwQ0YONUULNp2patPlEBeYWf0DH21t9ZMdD9nuPeaCPzfB3UirubeEmbNe\r\nXSJsKUt0NnnL2HeS+GKu7uVSZ/m14FbDsh6KG4QXIZ3fVwr/RMl9N6Rx60pb\r\n3WuGbGoTKDtf8aqR3+aErYeBzETgJ3UIkavQet6x5yZrZ97p8eUDI77cBOBq\r\ngeIrG1a+x20nmjXNh9ss1POqtYRgB/i+t70JS4eqs/Z8FyTWrrIHcSr6af5V\r\n7kghjG6mPqDcsosPIC1kD8vIqnMSHvhJStBlJo5gi/v4XKaTq/RZZSVYg3kP\r\nIdyYWJVuUdj7lXU0hQImlVSqyA6me3+e1fY=\r\n=umRE\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","types":"lib/index.d.ts","engines":{"node":">=10"},"gitHead":"6cc2393dac024914f3302cab1b427bb461c9a190","scripts":{"lint":"eslint -c .eslintrc.js src/*","test":"jest --config jest.config.js --runInBand","build":"tsc","prepare":"npm run build","preversion":"npm run lint","prepublishOnly":"npm test && npm run lint"},"_npmUser":{"name":"balazskreith","email":"balazs.kreith@gmail.com"},"repository":{"url":"git+https://github.com/observertc/sfu-monitor-js.git","type":"git"},"_npmVersion":"6.14.17","description":"ObserveRTC SFU Integration Core Library","directories":{},"_nodeVersion":"14.21.1","dependencies":{"ws":"^8.5.0","uuid":"^8.3.2","loglevel":"^1.8.0","@types/ws":"^8.5.3","js-base64":"^3.7.2","js-sha256":"^0.9.0","protobufjs":"^6.11.2","@types/uuid":"^8.3.4","@types/events":"^3.0.0","@observertc/schemas":"^2.2.0-SNAPSHOT.7208c09b8e6eaff4c4b3a07666f21eec96ef96f0"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.5.0","eslint":"^8.12.0","ts-jest":"^27.1.4","bufferutil":"^4.0.6","typescript":"^4.6.3","@types/jest":"^27.4.0","utf-8-validate":"^5.0.9","@typescript-eslint/parser":"^5.18.0","@typescript-eslint/eslint-plugin":"^5.18.0"},"_npmOperationalInternal":{"tmp":"tmp/sfu-monitor-js_1.1.0-SNAPSHOT.6cc2393dac024914f3302cab1b427bb461c9a190_1669296095554_0.3105920810733829","host":"s3://npm-registry-packages"},"deprecated":"Package no longer supported. Contact Support at https://www.npmjs.com/support for more info."},"1.1.0-SNAPSHOT.37133f95530ddfb6c3723dd4a958f1bb6a9cd665":{"name":"@observertc/sfu-monitor-js","version":"1.1.0-SNAPSHOT.37133f95530ddfb6c3723dd4a958f1bb6a9cd665","keywords":["webrtc","getStats","observertc","sfu","integration"],"author":{"name":"Balazs Kreith"},"license":"Apache-2.0","_id":"@observertc/sfu-monitor-js@1.1.0-SNAPSHOT.37133f95530ddfb6c3723dd4a958f1bb6a9cd665","maintainers":[{"name":"pallab.gain","email":"pallab.gain@gmail.com"},{"name":"balazskreith","email":"balazs.kreith@gmail.com"}],"homepage":"https://github.com/observertc/sfu-monitor-js#readme","bugs":{"url":"https://github.com/observertc/sfu-monitor-js/issues"},"dist":{"shasum":"f0f446c4a9d6b78264c1cdaf277876187f65d5d8","tarball":"https://registry.npmjs.org/@observertc/sfu-monitor-js/-/sfu-monitor-js-1.1.0-SNAPSHOT.37133f95530ddfb6c3723dd4a958f1bb6a9cd665.tgz","fileCount":226,"integrity":"sha512-LNoekNDml3jRwVWdIrD0OX25hV3SVb0cvKVS2OszvTcZ1ImeaRaIP0vFC+U6zPyPzpbsICdfgFu7hKf/gOhYVQ==","signatures":[{"sig":"MEUCIAWdpP90udI9yl9iKN3ERyOzRfXPNibNqBN6W6NqbQf1AiEA7ITk1O/597nDkQcmAiSYLHhbsTipoYheTYpuHsguO7k=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":1668107,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjf3R6ACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmpAPQ/6AoTJNSCVIRjUU7f5EIX/8ilVgCddaMkA5MkQJyQnCYuiRjr1\r\ng9WJ8CagnOu7+gAUFQ2kP6JEzP8rip3V4ESnmbBrMiamlCWIT0eQSyZqLmaW\r\nVrtFoAGgpilItpRfI3+9l2Hu1s06Flyq0YfbPeG5QlBLdkqwqdPHiwGr7/br\r\nua2GbU6y3wROID6QuK2Ab0c/b3pBqi+cotvCHPVyhOtUnKuM3xTaYBdEVr8H\r\n19Ht6uDsP6bKojT/4WK7gs05zRcyYgNJix8oE8vXXzBXyQ0+zgyHz1ckwsco\r\n0GKyCvl4QYhHp/D+irZXOzmUW5J5Ibd4/H6D/fVP0yIdHJ45ut+Hb2jiaDCj\r\nHCCr1bCzGwmjnnhloQSmBIKQckVrPCuTYE00TTC1mKtV0oM2WMndue9D2zmD\r\nt4IjDn5blgkHLsLTkKjrupaNP0Pg2EDp5XTY7LtA4XvlWHZ/opgQzuVwBqWk\r\nlu7s7I7fQUNZOezaqgeHrEc4lrZNpHgwWgaVKFIvCcJHeI4Sy8003KOgI10A\r\nGxMji9I8vLS0DlpkxdACnCkgxVVUdnmi9MgVEdD1PQupXgYQThr1x3WoxvFr\r\nawO8nLUyjTQMYy8PZn+Fo0AKu5ykvk5lJJx53UX69f4ZZl9Kd0gmEKPO4G95\r\nkXvODDqsXwcaFGqcQUOhAMXZWmRlkeatQ2E=\r\n=D1z8\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","types":"lib/index.d.ts","engines":{"node":">=10"},"gitHead":"37133f95530ddfb6c3723dd4a958f1bb6a9cd665","scripts":{"lint":"eslint -c .eslintrc.js src/*","test":"jest --config jest.config.js --runInBand","build":"tsc","prepare":"npm run build","preversion":"npm run lint","prepublishOnly":"npm test && npm run lint"},"_npmUser":{"name":"balazskreith","email":"balazs.kreith@gmail.com"},"repository":{"url":"git+https://github.com/observertc/sfu-monitor-js.git","type":"git"},"_npmVersion":"6.14.17","description":"ObserveRTC SFU Integration Core Library","directories":{},"_nodeVersion":"14.21.1","dependencies":{"ws":"^8.5.0","uuid":"^8.3.2","loglevel":"^1.8.0","@types/ws":"^8.5.3","js-base64":"^3.7.2","js-sha256":"^0.9.0","protobufjs":"^6.11.2","@types/uuid":"^8.3.4","@types/events":"^3.0.0","@observertc/schemas":"^2.2.0-SNAPSHOT.7208c09b8e6eaff4c4b3a07666f21eec96ef96f0"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.5.0","eslint":"^8.12.0","ts-jest":"^27.1.4","bufferutil":"^4.0.6","typescript":"^4.6.3","@types/jest":"^27.4.0","utf-8-validate":"^5.0.9","@typescript-eslint/parser":"^5.18.0","@typescript-eslint/eslint-plugin":"^5.18.0"},"_npmOperationalInternal":{"tmp":"tmp/sfu-monitor-js_1.1.0-SNAPSHOT.37133f95530ddfb6c3723dd4a958f1bb6a9cd665_1669297274186_0.84326413928053","host":"s3://npm-registry-packages"},"deprecated":"Package no longer supported. Contact Support at https://www.npmjs.com/support for more info."},"1.1.0-SNAPSHOT.c9b9cf7c3948c062b36d9f97ca9bf3ebe5b82f83":{"name":"@observertc/sfu-monitor-js","version":"1.1.0-SNAPSHOT.c9b9cf7c3948c062b36d9f97ca9bf3ebe5b82f83","keywords":["webrtc","getStats","observertc","sfu","integration"],"author":{"name":"Balazs Kreith"},"license":"Apache-2.0","_id":"@observertc/sfu-monitor-js@1.1.0-SNAPSHOT.c9b9cf7c3948c062b36d9f97ca9bf3ebe5b82f83","maintainers":[{"name":"pallab.gain","email":"pallab.gain@gmail.com"},{"name":"balazskreith","email":"balazs.kreith@gmail.com"}],"homepage":"https://github.com/observertc/sfu-monitor-js#readme","bugs":{"url":"https://github.com/observertc/sfu-monitor-js/issues"},"dist":{"shasum":"647cc9b4f28b175225fb3eec38b6602d3d4e01f2","tarball":"https://registry.npmjs.org/@observertc/sfu-monitor-js/-/sfu-monitor-js-1.1.0-SNAPSHOT.c9b9cf7c3948c062b36d9f97ca9bf3ebe5b82f83.tgz","fileCount":226,"integrity":"sha512-i40ufeeOX6fc6jvZTQFYR9vfYnQISf7O1ddmX0v5XLRscNqXMdX3y02J6Ae7m8mDHXYr0bPvyy7HBzE93v/btg==","signatures":[{"sig":"MEUCIQD+ZI/OK8rWiqFUfKvpmmTuGeIeca3GvVgT8hdsbHz79gIgG2k29WGdUXXwEadszrMi89MJxADmNaBtlVvgUOmqOqY=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":1668107,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjf3sfACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmpzCg/8DTaR+BNuy25RAoWv0K7aPwd5DDxKnnw8Tj3ns9fdDmHl6PgC\r\n+qvyuKGtpcOHEH3Q9t/H7CuPyUuSEbDYbHMQae+8fpZDLRYLX9gSivnFM2Rt\r\nevNMVNYKqxTePIF7yfqJvcK5WFsorwiSfoR8LzCb5kPfrSe2PK3SUEiAdou4\r\nTJeJCZe+dkkPtCMcfdwYoAIUonaGZlhlJZdOo25xd4oa5XPDrQvNrprQtqzX\r\neKTQrJsFS3QRiGjZdx82yuEcLMJezSgdScY8lv7X0JioTdGJIVot2tWd6mVr\r\njPQR2LRCl5XwqFJFw7hSoFxXHIBjzMcfpuSmWNQDEK94CTs+YdGbs7af8yYP\r\nC/h7Sxp1KX16DhRpT+G31t4QkTDBrM+wKrvDaVd20K7RUmtZqapftGL2fKTZ\r\nYgGZInnk4TdMsWaSOGPQGuJ10Vw1/9djWg38kehfOXJI4EY4PrTNHlqsDrb3\r\nXkVX0tD6ptEPHYhsUXNt7DetxoMncgdVnrs0Sbl4LUHiFVfLdgzlBQ+p8P0O\r\n2bZ4kXJo7LVm2hkDbDMyTwSkaTulLi7soPn8FMD7ANxMTS97c8rSXDz2lmVL\r\nfZQbnIvrNHKZGpU72RiK8ZpgXxXDsGmJb0Q9DvF+KtN+MS6g/jueoo+TMhHC\r\nUyIDQeZsYUe5/MFQcHjW8nuJ98qhAtN7+5o=\r\n=THG8\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","types":"lib/index.d.ts","engines":{"node":">=10"},"gitHead":"c9b9cf7c3948c062b36d9f97ca9bf3ebe5b82f83","scripts":{"lint":"eslint -c .eslintrc.js src/*","test":"jest --config jest.config.js --runInBand","build":"tsc","prepare":"npm run build","preversion":"npm run lint","prepublishOnly":"npm test && npm run lint"},"_npmUser":{"name":"balazskreith","email":"balazs.kreith@gmail.com"},"repository":{"url":"git+https://github.com/observertc/sfu-monitor-js.git","type":"git"},"_npmVersion":"6.14.17","description":"ObserveRTC SFU Integration Core Library","directories":{},"_nodeVersion":"14.21.1","dependencies":{"ws":"^8.5.0","uuid":"^8.3.2","loglevel":"^1.8.0","@types/ws":"^8.5.3","js-base64":"^3.7.2","js-sha256":"^0.9.0","protobufjs":"^6.11.2","@types/uuid":"^8.3.4","@types/events":"^3.0.0","@observertc/schemas":"^2.2.0-SNAPSHOT.7208c09b8e6eaff4c4b3a07666f21eec96ef96f0"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.5.0","eslint":"^8.12.0","ts-jest":"^27.1.4","bufferutil":"^4.0.6","typescript":"^4.6.3","@types/jest":"^27.4.0","utf-8-validate":"^5.0.9","@typescript-eslint/parser":"^5.18.0","@typescript-eslint/eslint-plugin":"^5.18.0"},"_npmOperationalInternal":{"tmp":"tmp/sfu-monitor-js_1.1.0-SNAPSHOT.c9b9cf7c3948c062b36d9f97ca9bf3ebe5b82f83_1669298975183_0.8236264310632646","host":"s3://npm-registry-packages"},"deprecated":"Package no longer supported. Contact Support at https://www.npmjs.com/support for more info."},"1.1.0-SNAPSHOT.d95dc96e845e7e086613bc9a03c1221f4a19afbd":{"name":"@observertc/sfu-monitor-js","version":"1.1.0-SNAPSHOT.d95dc96e845e7e086613bc9a03c1221f4a19afbd","keywords":["webrtc","getStats","observertc","sfu","integration"],"author":{"name":"Balazs Kreith"},"license":"Apache-2.0","_id":"@observertc/sfu-monitor-js@1.1.0-SNAPSHOT.d95dc96e845e7e086613bc9a03c1221f4a19afbd","maintainers":[{"name":"pallab.gain","email":"pallab.gain@gmail.com"},{"name":"balazskreith","email":"balazs.kreith@gmail.com"}],"homepage":"https://github.com/observertc/sfu-monitor-js#readme","bugs":{"url":"https://github.com/observertc/sfu-monitor-js/issues"},"dist":{"shasum":"76aaa6923bbca1ee0c02b76bf152f4856079cc42","tarball":"https://registry.npmjs.org/@observertc/sfu-monitor-js/-/sfu-monitor-js-1.1.0-SNAPSHOT.d95dc96e845e7e086613bc9a03c1221f4a19afbd.tgz","fileCount":226,"integrity":"sha512-Cz76S1m/kO3+7VX6gG8txEVueQCUtmj5DNVgzBCK20Fu7TrXctZUOTIsw5cpp9e5nbE55O02vhyTWFBUlR0WBg==","signatures":[{"sig":"MEYCIQCGLpVddHf3nVCoWE14COVK1vxPhaRsA7f2v43nk6lV7gIhAPyF4FCzDx8T600zQc58fK4GDqvjQZRcifK3/7FnKAA0","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":1668386,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjhm4sACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmr0cRAAg16G8JLBsejr4trmLHIYb1Lo6zCniketTy1L+k56l00dIeP/\r\nAiEm+zLzYoUdBzMGBT5yI/jgjqcEksgD1CvugG9/SLXoITdc7ZmrHrLgAZ00\r\nmlUeJjnDpRfsZaJV4xV5CBBJQXzXybOsMOpblaOcC3Eaca9kcvhCxiBtsyUi\r\nbjBpKsr0iAzyz0tLQ20rjcvZdp10lVTUcYvlSLDT0UK2khjBOm6mws9prwWL\r\nqN4QVCfTy8j/z/PFqNWWcCdnTcS5QEV9dbJtAhwdugaDHbC/rXMJWRWrDZiC\r\nF23e31FR+RCCVKdEyRASGKALcaCeF7T/IYYWDQT0egG8BHMCNRnhIF+0S6Or\r\n7L45EcdFiw9L2Kx0/eQ0Ku3PKbomwFz10m/RrGjlTLzMI9oBFJFO5rvGo7Z6\r\nU5r7nxTSx+PpNOJHVBOC3aPgeScyBzMKjCx2BtH9sUnRum7w30Uptugq7rLt\r\nnvQX5JX0dhvUAMtAw9RDXErslMm0pj/d9ND9kXdGNwrob6NpJml6hS3dlGDi\r\nOIzOGgAhEFhO2qKtNPijyK4Z3v+s2BbibhdJMF4j7sXUCKXM6yRhxlErAbAI\r\nNapVOyYDqeowsh/vD5C6EQ7S4gY5PLc24i3F+v1mcJGD5WZ365u5nvW+AhDw\r\nary7Kuq5l1pLDa/Jbl3HfEUxs4TVebz8Cic=\r\n=hYQM\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","types":"lib/index.d.ts","engines":{"node":">=10"},"gitHead":"d95dc96e845e7e086613bc9a03c1221f4a19afbd","scripts":{"lint":"eslint -c .eslintrc.js src/*","test":"jest --config jest.config.js --runInBand","build":"tsc","prepare":"npm run build","preversion":"npm run lint","prepublishOnly":"npm test && npm run lint"},"_npmUser":{"name":"balazskreith","email":"balazs.kreith@gmail.com"},"repository":{"url":"git+https://github.com/observertc/sfu-monitor-js.git","type":"git"},"_npmVersion":"6.14.17","description":"ObserveRTC SFU Integration Core Library","directories":{},"_nodeVersion":"14.21.1","dependencies":{"ws":"^8.5.0","uuid":"^8.3.2","loglevel":"^1.8.0","@types/ws":"^8.5.3","js-base64":"^3.7.2","js-sha256":"^0.9.0","protobufjs":"^6.11.2","@types/uuid":"^8.3.4","@types/events":"^3.0.0","@observertc/schemas":"^2.2.0-SNAPSHOT.7208c09b8e6eaff4c4b3a07666f21eec96ef96f0"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.5.0","eslint":"^8.12.0","ts-jest":"^27.1.4","bufferutil":"^4.0.6","typescript":"^4.6.3","@types/jest":"^27.4.0","utf-8-validate":"^5.0.9","@typescript-eslint/parser":"^5.18.0","@typescript-eslint/eslint-plugin":"^5.18.0"},"_npmOperationalInternal":{"tmp":"tmp/sfu-monitor-js_1.1.0-SNAPSHOT.d95dc96e845e7e086613bc9a03c1221f4a19afbd_1669754412325_0.1744295937076592","host":"s3://npm-registry-packages"},"deprecated":"Package no longer supported. Contact Support at https://www.npmjs.com/support for more info."},"1.1.0-SNAPSHOT.63838b178d29ea166729d46f6b9fc198fabc63f9":{"name":"@observertc/sfu-monitor-js","version":"1.1.0-SNAPSHOT.63838b178d29ea166729d46f6b9fc198fabc63f9","keywords":["webrtc","getStats","observertc","sfu","integration"],"author":{"name":"Balazs Kreith"},"license":"Apache-2.0","_id":"@observertc/sfu-monitor-js@1.1.0-SNAPSHOT.63838b178d29ea166729d46f6b9fc198fabc63f9","maintainers":[{"name":"pallab.gain","email":"pallab.gain@gmail.com"},{"name":"balazskreith","email":"balazs.kreith@gmail.com"}],"homepage":"https://github.com/observertc/sfu-monitor-js#readme","bugs":{"url":"https://github.com/observertc/sfu-monitor-js/issues"},"dist":{"shasum":"6ecf29f7a83ae441a2af84f6cb4806a284303b24","tarball":"https://registry.npmjs.org/@observertc/sfu-monitor-js/-/sfu-monitor-js-1.1.0-SNAPSHOT.63838b178d29ea166729d46f6b9fc198fabc63f9.tgz","fileCount":226,"integrity":"sha512-4EP2uGlPOGypW/WtFte3uzmXtYIII3oW5HEsezJCubleuLMqb9Tx/1w1Ue4VjQcB524dU/o0Hy6wH0ih0dq/Vw==","signatures":[{"sig":"MEUCIQCh1PZU20116iJ06y8Rwn1Tr/A3stBjIrV9FwegqrbRCwIgLtkP85YH88LTPOHIT+20JrnVhOCQ4VyKWBrTtbP+uc4=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":1670447,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjhncGACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmpcohAApRsNGweddnyszYA8EJS15DjEHNGJtHPkQxr3MR6V70Iyf3EW\r\nPLdFgTek6x8GdMFWDgwbUtYQ4fyoQ6N09BfzBcD65hwwDSJTUwkpAsYA9AEr\r\ne7xweI48qxQ54bSir8piW/EbcRbU7Lj5FbGWYzWYQrVFKEazgMmZpWVEuvmq\r\nIEAnQ3ddQ+7by6k4VjBKWrrQiTItCRQLZn7QoSLzr6T9Irsak3223P+06wPp\r\naEB/W0VF7tspg8JlYl93GuUU9erg1zXojy144OBYr60e7ffX+Kx8qMWYz6lY\r\nLD4nyJtm8Bsq0R1VVrelskAwqoyYoAkG+E1bbyeFVYepg/3QEVj3UTucWCVA\r\nFzUAWkQmjUiw+DG4P8zsAFTlftL5rbRHQAURJGJulr+Xw2WSKzNNjt/R5jWf\r\n7TAaAAZBJxTguLuNMSLeTEEGqvaoxOX5OI2Vb6ISd0lJ8/iI7eOGIRWAAWx3\r\nrMZ2+GA6sSh23q75iqYo/Yu4ElXnFzmI1dBBMZNhsqu9ADuhDzurzHcGfYQP\r\ns7+erSUmYRHWXvlHudf40BwYQ2dup5Y51yXAlqFoOpcCXq7UscYNQGwR8XrE\r\nLETBvnYpp9rFDWRo5BOnKCgk+4SC8CzMzfAC0PIVI190mJFT8L2WH/GOcV/Z\r\nYIEGBIzgxchaeCQpgIOFOadwyLlU3urRmBw=\r\n=ZFKo\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","types":"lib/index.d.ts","engines":{"node":">=10"},"gitHead":"63838b178d29ea166729d46f6b9fc198fabc63f9","scripts":{"lint":"eslint -c .eslintrc.js src/*","test":"jest --config jest.config.js --runInBand","build":"tsc","prepare":"npm run build","preversion":"npm run lint","prepublishOnly":"npm test && npm run lint"},"_npmUser":{"name":"balazskreith","email":"balazs.kreith@gmail.com"},"repository":{"url":"git+https://github.com/observertc/sfu-monitor-js.git","type":"git"},"_npmVersion":"6.14.17","description":"ObserveRTC SFU Integration Core Library","directories":{},"_nodeVersion":"14.21.1","dependencies":{"ws":"^8.5.0","uuid":"^8.3.2","loglevel":"^1.8.0","@types/ws":"^8.5.3","js-base64":"^3.7.2","js-sha256":"^0.9.0","protobufjs":"^6.11.2","@types/uuid":"^8.3.4","@types/events":"^3.0.0","@observertc/schemas":"^2.2.0-SNAPSHOT.7208c09b8e6eaff4c4b3a07666f21eec96ef96f0"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.5.0","eslint":"^8.12.0","ts-jest":"^27.1.4","bufferutil":"^4.0.6","typescript":"^4.6.3","@types/jest":"^27.4.0","utf-8-validate":"^5.0.9","@typescript-eslint/parser":"^5.18.0","@typescript-eslint/eslint-plugin":"^5.18.0"},"_npmOperationalInternal":{"tmp":"tmp/sfu-monitor-js_1.1.0-SNAPSHOT.63838b178d29ea166729d46f6b9fc198fabc63f9_1669756678216_0.964853132370366","host":"s3://npm-registry-packages"},"deprecated":"Package no longer supported. Contact Support at https://www.npmjs.com/support for more info."},"1.1.0-SNAPSHOT.b290be384db22c93c76c037a47a41a5c1b482584":{"name":"@observertc/sfu-monitor-js","version":"1.1.0-SNAPSHOT.b290be384db22c93c76c037a47a41a5c1b482584","keywords":["webrtc","getStats","observertc","sfu","integration"],"author":{"name":"Balazs Kreith"},"license":"Apache-2.0","_id":"@observertc/sfu-monitor-js@1.1.0-SNAPSHOT.b290be384db22c93c76c037a47a41a5c1b482584","maintainers":[{"name":"pallab.gain","email":"pallab.gain@gmail.com"},{"name":"balazskreith","email":"balazs.kreith@gmail.com"}],"homepage":"https://github.com/observertc/sfu-monitor-js#readme","bugs":{"url":"https://github.com/observertc/sfu-monitor-js/issues"},"dist":{"shasum":"08b7d00a3e848a362ec96d51efaeb0555cf1084c","tarball":"https://registry.npmjs.org/@observertc/sfu-monitor-js/-/sfu-monitor-js-1.1.0-SNAPSHOT.b290be384db22c93c76c037a47a41a5c1b482584.tgz","fileCount":226,"integrity":"sha512-p338Ds3oW+40k/fSNQ0/OKUjbu44WsMdV3tgkOrgXh8HJDDvGEN3LP90pMKnGCYnJgikGzedLPQXXprziZ6Mug==","signatures":[{"sig":"MEQCIFGICLbga3+MXxmcjr4/zQIZil1wyjp5k32D91QlUs/sAiBq1QvG7fUA5d/1CBduvFwfNIQ6r72LhqgriMAFzNYDww==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":1670978,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjhv1sACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmrt9A/8DEhl6+gHV9pzLSxlnKmu680FVi7SItnpVGeOtI79aRXOBnU1\r\nq038tYhiDI+IYNZtWCxeDsnTzdXk+S4iEUGwhDNXHuofeGq6gpnW8r1EDN1P\r\nBcbOTGfHjuvrBKYt6+qwSeikPFkHTBM85wa4x+PGTLalbEi6gc4K/MNik6JC\r\nfeOVO0JXUWX1cZkssTmHVp/TdDYnyfIsYUey6wIqKeQEBlDjKq9ZrU8RwGey\r\nYB5IsyIYhpTof4qKE/MXS3vgW74NTC8c08/TMDcsfqXoBnzAA9rL6nX64p/x\r\nFX0OrzVR0opQyYSDnOQ8plWaqMgYhEJQ3fnkm5PvdA+8MEZxQ/wLdoF8wIhS\r\nEgyBY57ktO3YknUZKC7PwqYFTDFdWgO1GzXGfy2pkC/20jTYCbg42uTLJbGM\r\nnHP/EejQjeJgjovDZsPVfg0k4WFwiTqgX87X0Dph/VB4C0qvysODnUs1tFru\r\nxPA1PjnARv5vAdR3Dy6gqQr9FuZXvE48KU8JqqQ4hapZXoKP/C6SOk4sp8fd\r\n6TsARAEcS3ZSECl96QKQO2QttTF7w4gpD9jwLrBauX3+g36WUBcVEbDXxJHZ\r\nbR2rMzw2/R4uTNpxPtD4ExzODIS/HmRhfEXv38l4bqXgneECmfZs5AlwPBx2\r\np3HMHmqldLTkXz+lUYvCGenXmnn59eg9r0M=\r\n=2yo1\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","types":"lib/index.d.ts","engines":{"node":">=10"},"gitHead":"b290be384db22c93c76c037a47a41a5c1b482584","scripts":{"lint":"eslint -c .eslintrc.js src/*","test":"jest --config jest.config.js --runInBand","build":"tsc","prepare":"npm run build","preversion":"npm run lint","prepublishOnly":"npm test && npm run lint"},"_npmUser":{"name":"balazskreith","email":"balazs.kreith@gmail.com"},"repository":{"url":"git+https://github.com/observertc/sfu-monitor-js.git","type":"git"},"_npmVersion":"6.14.17","description":"ObserveRTC SFU Integration Core Library","directories":{},"_nodeVersion":"14.21.1","dependencies":{"ws":"^8.5.0","uuid":"^8.3.2","loglevel":"^1.8.0","@types/ws":"^8.5.3","js-base64":"^3.7.2","js-sha256":"^0.9.0","protobufjs":"^6.11.2","@types/uuid":"^8.3.4","@types/events":"^3.0.0","@observertc/schemas":"^2.2.0"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.5.0","eslint":"^8.12.0","ts-jest":"^27.1.4","bufferutil":"^4.0.6","typescript":"^4.6.3","@types/jest":"^27.4.0","utf-8-validate":"^5.0.9","@typescript-eslint/parser":"^5.18.0","@typescript-eslint/eslint-plugin":"^5.18.0"},"_npmOperationalInternal":{"tmp":"tmp/sfu-monitor-js_1.1.0-SNAPSHOT.b290be384db22c93c76c037a47a41a5c1b482584_1669791084186_0.45246205299312603","host":"s3://npm-registry-packages"},"deprecated":"Package no longer supported. Contact Support at https://www.npmjs.com/support for more info."},"1.1.0-SNAPSHOT.e0b00f50a9ef9b01d38c584e0eb4dfadd0b91369":{"name":"@observertc/sfu-monitor-js","version":"1.1.0-SNAPSHOT.e0b00f50a9ef9b01d38c584e0eb4dfadd0b91369","keywords":["webrtc","getStats","observertc","sfu","integration"],"author":{"name":"Balazs Kreith"},"license":"Apache-2.0","_id":"@observertc/sfu-monitor-js@1.1.0-SNAPSHOT.e0b00f50a9ef9b01d38c584e0eb4dfadd0b91369","maintainers":[{"name":"pallab.gain","email":"pallab.gain@gmail.com"},{"name":"balazskreith","email":"balazs.kreith@gmail.com"}],"homepage":"https://github.com/observertc/sfu-monitor-js#readme","bugs":{"url":"https://github.com/observertc/sfu-monitor-js/issues"},"dist":{"shasum":"6ba1ee99a81df066d7930b65cce9734141fb659c","tarball":"https://registry.npmjs.org/@observertc/sfu-monitor-js/-/sfu-monitor-js-1.1.0-SNAPSHOT.e0b00f50a9ef9b01d38c584e0eb4dfadd0b91369.tgz","fileCount":226,"integrity":"sha512-K1CWTNO0iJqNb497TDF7Xx1YHiGPdMa1gyJXcdXHJT+OP+oRYj5nexXp+iNs27vjJseNNz2RAHoUdBL9+chsoA==","signatures":[{"sig":"MEUCIAUz39tuopMGYZskGpF9bGkGDwG+dwLyfZX0ic2KBedDAiEAiO07EKSZfS9KdRYWZxBRVs2qRmU3mK9bUUa1eFgN3uo=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":1671630,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjhxt9ACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmoDSw/+NzvAKXu7Nob8OqjZMZxMhLPyCiieVviW97AHBIJKFdr6Wdkm\r\n4uyj4LRn+gba4cJUs9riawgo6YRqCkSP4aM7qyQgA7P+4Mn2KO+7wjTP31Ow\r\nEdLP8uOM1t9Uiw+py3UKxsSLh6BUMq+3yeJ2HrtDuhyywILVBfIUFvqIZdle\r\nLH2h2WB2AXA3Wk5T3chimW2IrHqutEXKhiVKsAwB2Rqpjo15oAkX+zgeTMHy\r\nW6bsatdu+135pKVLqdCvUgnGtWdkvWTJpjpNyAk9+CIlwxGYR0RWJ4ENQ3m/\r\nQli8kRkKtjzemaWcCPeTtl3hMVhbIAr5GNmKdrJwkQvr2OLPSye6j7yFciFB\r\n3xXLIZrWlplXOW03jNabGsxdfBCG5uYtoph35h7r5HxoL8YeDXuvoxgTGaB3\r\nxt7N3cRMx+MbBVLPHtgFFzlDvc1CK7rHwey/O/3/4DSeUXvNCkqLycTKhGuO\r\nMraRXaCgvIIFd8EWnsC7RSC8scvzAczvWE2Aiq7PaRhKqsB1tuBvoFd9dPrB\r\nVD2QAtgx7QixZ8EC5lZCnAzd/F8Z8IZRaZdIG0hBclmMw3pvkOiRYmPU8GIa\r\nGzZgbgUhplbTCu5QXZMmDRkZF/gbJ+vywZzJL6EkAet2hdNoqZUAxSUkMmWz\r\nlEc4YtyhCvTkNDiquuKfXNspWWmeaRBMIbU=\r\n=RgMH\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","types":"lib/index.d.ts","engines":{"node":">=10"},"gitHead":"e0b00f50a9ef9b01d38c584e0eb4dfadd0b91369","scripts":{"lint":"eslint -c .eslintrc.js src/*","test":"jest --config jest.config.js --runInBand","build":"tsc","prepare":"npm run build","preversion":"npm run lint","prepublishOnly":"npm test && npm run lint"},"_npmUser":{"name":"balazskreith","email":"balazs.kreith@gmail.com"},"repository":{"url":"git+https://github.com/observertc/sfu-monitor-js.git","type":"git"},"_npmVersion":"6.14.17","description":"ObserveRTC SFU Integration Core Library","directories":{},"_nodeVersion":"14.21.1","dependencies":{"ws":"^8.5.0","uuid":"^8.3.2","loglevel":"^1.8.0","@types/ws":"^8.5.3","js-base64":"^3.7.2","js-sha256":"^0.9.0","protobufjs":"^6.11.2","@types/uuid":"^8.3.4","@types/events":"^3.0.0","@observertc/schemas":"^2.2.0"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.5.0","eslint":"^8.12.0","ts-jest":"^27.1.4","bufferutil":"^4.0.6","typescript":"^4.6.3","@types/jest":"^27.4.0","utf-8-validate":"^5.0.9","@typescript-eslint/parser":"^5.18.0","@typescript-eslint/eslint-plugin":"^5.18.0"},"_npmOperationalInternal":{"tmp":"tmp/sfu-monitor-js_1.1.0-SNAPSHOT.e0b00f50a9ef9b01d38c584e0eb4dfadd0b91369_1669798781564_0.5794188014702946","host":"s3://npm-registry-packages"},"deprecated":"Package no longer supported. Contact Support at https://www.npmjs.com/support for more info."},"1.1.0":{"name":"@observertc/sfu-monitor-js","version":"1.1.0","keywords":["webrtc","getStats","observertc","sfu","integration"],"author":{"name":"Balazs Kreith"},"license":"Apache-2.0","_id":"@observertc/sfu-monitor-js@1.1.0","maintainers":[{"name":"pallab.gain","email":"pallab.gain@gmail.com"},{"name":"balazskreith","email":"balazs.kreith@gmail.com"}],"homepage":"https://github.com/observertc/sfu-monitor-js#readme","bugs":{"url":"https://github.com/observertc/sfu-monitor-js/issues"},"dist":{"shasum":"0798ce63c8ca0448157a4ea1b8238cfbb0ae1c13","tarball":"https://registry.npmjs.org/@observertc/sfu-monitor-js/-/sfu-monitor-js-1.1.0.tgz","fileCount":226,"integrity":"sha512-w9IH+an0slY/L/gxmZxiW0ETdocZeUHmHCtGv+Tv+bcCeFRw5RMLyO94/sDP4oMjR43gsDi41dea53fE93z++Q==","signatures":[{"sig":"MEQCIAUxZjOr4INEogjAAEzFFF8m24Z+7354kcZNVWlnXMMRAiAf6NppmO/0ziv3YGl/+6QYcgvZMffQFHC2uWgyCM1uOw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":1671580,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjhxvrACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmpzzhAAg6N78M5Spsujet3NN55B6OczPjqBXmRh/SXsTo5tst7Xy11Q\r\nJ06PG1IpSSpRDsXAcOxpPqYH7/x9x0X7Z7/7YPHuI1ifBLqCSCnb40UrhYXG\r\nc4ZwUSChmK+QUPa6Qderch76zWeRdMh5Lheq9eecGehqji44ifFJLzMrNYkG\r\neMu95qZ00DeTbQWxzhInkP0l6ai0bIav8ydOmR2xRYwKIqPFVUkf2Y8J2juF\r\nrnzvaQFBOMWEhriAe7qfJbaGRTsQUXAOe+uKB14eh4dE+rR8aOqS3/WBOuXt\r\ngklr10Rm5ZDBTWWnKtYlsCNak5tkflVBca5oY+f+iWXsD4pMrg0mb6d0YScI\r\ncFRP5SzxHS61o29qZTI66ic0jNyEwESYVBGgjG0S6VSblldjZtc2l/Mq74IF\r\ndpBeF9K2sw2I9JnDla8aIdKOY1UQPNdoXUFrOskeLNmDxLEMA8/6Xv+BcUsU\r\nkX5F5JzWu3ChHxSDMYyBmUQnplESW07dKAzB+N/tK7dAp8cqnCH6YG/6pApv\r\ngvbOvKA/OJPB5JUO/w+29M9g396iJKqXp7OWPGP7thqHVWqMjrG7fktInnou\r\n6GkOgdFTOSJwa8ZPerrCEKETNQrfSd7Nq0NTUCcypVh3wVnSnj+OsEGWeHgY\r\nV1aA8iKqzgzJp89ExtrLy+JhICoriN24/N0=\r\n=lYYX\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","types":"lib/index.d.ts","engines":{"node":">=10"},"gitHead":"f9f0b7c734218b3004cd1a4fb53991ac34eeee23","scripts":{"lint":"eslint -c .eslintrc.js src/*","test":"jest --config jest.config.js --runInBand","build":"tsc","prepare":"npm run build","preversion":"npm run lint","prepublishOnly":"npm test && npm run lint"},"_npmUser":{"name":"balazskreith","email":"balazs.kreith@gmail.com"},"repository":{"url":"git+https://github.com/observertc/sfu-monitor-js.git","type":"git"},"_npmVersion":"6.14.17","description":"ObserveRTC SFU Integration Core Library","directories":{},"_nodeVersion":"14.21.1","dependencies":{"ws":"^8.5.0","uuid":"^8.3.2","loglevel":"^1.8.0","@types/ws":"^8.5.3","js-base64":"^3.7.2","js-sha256":"^0.9.0","protobufjs":"^6.11.2","@types/uuid":"^8.3.4","@types/events":"^3.0.0","@observertc/schemas":"^2.2.0"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.5.0","eslint":"^8.12.0","ts-jest":"^27.1.4","bufferutil":"^4.0.6","typescript":"^4.6.3","@types/jest":"^27.4.0","utf-8-validate":"^5.0.9","@typescript-eslint/parser":"^5.18.0","@typescript-eslint/eslint-plugin":"^5.18.0"},"_npmOperationalInternal":{"tmp":"tmp/sfu-monitor-js_1.1.0_1669798891423_0.5053318600520986","host":"s3://npm-registry-packages"},"deprecated":"Package no longer supported. Contact Support at https://www.npmjs.com/support for more info."},"1.1.0-SNAPSHOT.3610a23b3e25b31493144c02ded21ce59a6a871b":{"name":"@observertc/sfu-monitor-js","version":"1.1.0-SNAPSHOT.3610a23b3e25b31493144c02ded21ce59a6a871b","keywords":["webrtc","getStats","observertc","sfu","integration"],"author":{"name":"Balazs Kreith"},"license":"Apache-2.0","_id":"@observertc/sfu-monitor-js@1.1.0-SNAPSHOT.3610a23b3e25b31493144c02ded21ce59a6a871b","maintainers":[{"name":"pallab.gain","email":"pallab.gain@gmail.com"},{"name":"balazskreith","email":"balazs.kreith@gmail.com"}],"homepage":"https://github.com/observertc/sfu-monitor-js#readme","bugs":{"url":"https://github.com/observertc/sfu-monitor-js/issues"},"dist":{"shasum":"08b097f7f62a087f5fe518d36f2baeb2dcdf247e","tarball":"https://registry.npmjs.org/@observertc/sfu-monitor-js/-/sfu-monitor-js-1.1.0-SNAPSHOT.3610a23b3e25b31493144c02ded21ce59a6a871b.tgz","fileCount":226,"integrity":"sha512-MPJZrZOudl9bw6N8OjyGYg2XYhDORkQUmRVggnzQ9HCMjfEoAe4mU6w3b42o1G7xaMZKnB1pQSVREPX9VnftsQ==","signatures":[{"sig":"MEQCICN0oDUS8k89JSC5u+KyGs+UwsQAOdkeRPq5GALmMyZ8AiATWIBMUdxYTNUoYCkqv1p7fbsmIU8PyrElBSlfc+R+aQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":1675282,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjq/GSACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmroOQ//UQvq8pcSu8v3Vv4nb3a53NiGUERQb0T5NLoBIA7An3X4tsJF\r\nNlYGPtf5RkIv3NUg4LmpFakF2qgzCU/JQhg/y6zRw1QsbDIcpuklX6JDvhHf\r\nmsAA/Rk/kS3i/3oxYXEn0g8EUgIVD8QTKWsDscAjoq8BDxf1JOmot+VPjjVp\r\nw+y81kVatqnq6VuBnszpphHlzIHkjBZAms1CckScRzDoO7I+lHBMdwVLxQsc\r\nwlYczCH+Hw+VrsEQgNk7CzuWspOBE2uMZh0BhbwIU+3Hpzmz1Jw9m8ShRxae\r\n4g/iAE45+oOVtMgevO4edbJkIi3Am1Pb+cAqcfrxjCupfgDg1yWLNjBiaVTT\r\nssHteBRCS3xewKog/D0BC3B/xpD7yMYTr54eyTNnGwsSmZ6CBuCy3n3KCBZB\r\n+k1nS7seumc9oVdlmtRYI2nKJy3fhtCtoU8kxg70Dr8HH/1gj/jROQk+XWR2\r\n33QEUVmxrsYr422f0BQ/UZ2s5Qh0SnJF9VsVDBaaVlBSH+i1taGyXHPt1d8h\r\n9r9A0rS/LHUTkhtXaOjwVEI0Uq9cAisuEy0cRneMi20JXlqtAwXTHOEBiGhp\r\nFwzhruJflIYNxU8m0fn2c3c4Zcoq8Fxh/vVz56/x9HmueOBwTliZvrAmsPE7\r\nLFSg2BlXN+B/Qy3SYpcPOwabGcsv9PvJ5Eo=\r\n=L+Iw\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","types":"lib/index.d.ts","engines":{"node":">=10"},"gitHead":"3610a23b3e25b31493144c02ded21ce59a6a871b","scripts":{"lint":"eslint -c .eslintrc.js src/*","test":"jest --config jest.config.js --runInBand","build":"tsc","prepare":"npm run build","preversion":"npm run lint","prepublishOnly":"npm test && npm run lint"},"_npmUser":{"name":"balazskreith","email":"balazs.kreith@gmail.com"},"repository":{"url":"git+https://github.com/observertc/sfu-monitor-js.git","type":"git"},"_npmVersion":"6.14.17","description":"ObserveRTC SFU Integration Core Library","directories":{},"_nodeVersion":"14.21.1","dependencies":{"ws":"^8.5.0","uuid":"^8.3.2","loglevel":"^1.8.0","@types/ws":"^8.5.3","js-base64":"^3.7.2","js-sha256":"^0.9.0","protobufjs":"^6.11.2","@types/uuid":"^8.3.4","@types/events":"^3.0.0","@observertc/schemas":"^2.2.0"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.5.0","eslint":"^8.12.0","ts-jest":"^27.1.4","bufferutil":"^4.0.6","typescript":"^4.6.3","@types/jest":"^27.4.0","utf-8-validate":"^5.0.9","@typescript-eslint/parser":"^5.18.0","@typescript-eslint/eslint-plugin":"^5.18.0"},"_npmOperationalInternal":{"tmp":"tmp/sfu-monitor-js_1.1.0-SNAPSHOT.3610a23b3e25b31493144c02ded21ce59a6a871b_1672212882263_0.9724458013552659","host":"s3://npm-registry-packages"},"deprecated":"Package no longer supported. Contact Support at https://www.npmjs.com/support for more info."},"1.1.0-SNAPSHOT.a920780482643c59acfa7bcb50549089a098b237":{"name":"@observertc/sfu-monitor-js","version":"1.1.0-SNAPSHOT.a920780482643c59acfa7bcb50549089a098b237","keywords":["webrtc","getStats","observertc","sfu","integration"],"author":{"name":"Balazs Kreith"},"license":"Apache-2.0","_id":"@observertc/sfu-monitor-js@1.1.0-SNAPSHOT.a920780482643c59acfa7bcb50549089a098b237","maintainers":[{"name":"pallab.gain","email":"pallab.gain@gmail.com"},{"name":"balazskreith","email":"balazs.kreith@gmail.com"}],"homepage":"https://github.com/observertc/sfu-monitor-js#readme","bugs":{"url":"https://github.com/observertc/sfu-monitor-js/issues"},"dist":{"shasum":"50b0df300a54af88b8c2a6a4ab9a0872c957b700","tarball":"https://registry.npmjs.org/@observertc/sfu-monitor-js/-/sfu-monitor-js-1.1.0-SNAPSHOT.a920780482643c59acfa7bcb50549089a098b237.tgz","fileCount":231,"integrity":"sha512-VFCTLJDs47SWn7UeLVDPq/zOwsEISJaln1tRKZvHxL4wv8cd5uRjqy6KoqYZc7hueqBNmaIlitaNraQLXRs/ew==","signatures":[{"sig":"MEUCIQCiuVn8xpO9trm4Zgf8THDlt098+AuWN7TN5xaW/u7W2AIgc1r+FEXu47Q3AbfpQUJi6zY6e28cSze7n4FUysjIApg=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":1685904,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjq/f+ACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmqL4hAAjuiihDJxYofBUhpkVStgJqCPstjzGsyGcrk20clcUt7aNTOe\r\norXdL83j+q0kCBBqDicRnltxOm/byQocPie+JlLmwJGefqjP8oV97Agy10lI\r\nnHUin0W5lBQkq+5jfl0dJJJO5ZdKEK26yYfxN5F5YZpVe4/6KXd8oS97kcju\r\nhLX/CtXBBmBH7LRQOHItFYqDJ/cLmhpWxwoZhvF6hQUsISi/OYsluTCPrzuQ\r\no7JOHQ1fjH7RQbYrCPjGiv2t+hczSJOPOaKtrllhEDmApDQjgbgxZmCj7SLQ\r\nBwYBwl3ldMHl9E6iyPKGLM1sYtgf+bq/j2kBjLOVrD90e+MiX9+EsbX1VuCA\r\n8LK+Y+0FjOKNFdUI0E1uyFEbq9Uqz03BUeIVoyE28HNUIzirz/21IFBDD021\r\niLx87zrFxWTrxbee7fFx5ECY4RftbXtpi/syT8SwTqOb81hq27YDtK1DgxDe\r\nAUVej060L6BVAaAcE0kpSDYpToHRdc+OM6rhrvl7/mE+R2uwtZCv7yrM96qf\r\nabgIpcIcVMYmaIx/gceb9n45bH1FOXWlyFqFqIlLKQ2ViIECqUb0L4Ss6sn7\r\n+srBkxDAM0g8TCuS0w+OER/mA+m0MZFq1D/feYCzzjOtpud3vzTIRTnlJUtV\r\nUtQRv4tOiwmB203Pia0T1of15ySWQNBvHp8=\r\n=ryn2\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","types":"lib/index.d.ts","engines":{"node":">=10"},"gitHead":"a920780482643c59acfa7bcb50549089a098b237","scripts":{"lint":"eslint -c .eslintrc.js src/*","test":"jest --config jest.config.js --runInBand","build":"tsc","prepare":"npm run build","preversion":"npm run lint","prepublishOnly":"npm test && npm run lint"},"_npmUser":{"name":"balazskreith","email":"balazs.kreith@gmail.com"},"repository":{"url":"git+https://github.com/observertc/sfu-monitor-js.git","type":"git"},"_npmVersion":"6.14.17","description":"ObserveRTC SFU Integration Core Library","directories":{},"_nodeVersion":"14.21.1","dependencies":{"ws":"^8.5.0","uuid":"^8.3.2","loglevel":"^1.8.0","@types/ws":"^8.5.3","js-base64":"^3.7.2","js-sha256":"^0.9.0","protobufjs":"^6.11.2","@types/uuid":"^8.3.4","@types/events":"^3.0.0","@observertc/schemas":"^2.2.0"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.5.0","eslint":"^8.12.0","ts-jest":"^27.1.4","bufferutil":"^4.0.6","typescript":"^4.6.3","@types/jest":"^27.4.0","utf-8-validate":"^5.0.9","@typescript-eslint/parser":"^5.18.0","@typescript-eslint/eslint-plugin":"^5.18.0"},"_npmOperationalInternal":{"tmp":"tmp/sfu-monitor-js_1.1.0-SNAPSHOT.a920780482643c59acfa7bcb50549089a098b237_1672214526223_0.5811976174209761","host":"s3://npm-registry-packages"},"deprecated":"Package no longer supported. Contact Support at https://www.npmjs.com/support for more info."},"1.1.0-SNAPSHOT.6b7100257ac4bf507f5ffcc21b273a3b6b989a99":{"name":"@observertc/sfu-monitor-js","version":"1.1.0-SNAPSHOT.6b7100257ac4bf507f5ffcc21b273a3b6b989a99","keywords":["webrtc","getStats","observertc","sfu","integration"],"author":{"name":"Balazs Kreith"},"license":"Apache-2.0","_id":"@observertc/sfu-monitor-js@1.1.0-SNAPSHOT.6b7100257ac4bf507f5ffcc21b273a3b6b989a99","maintainers":[{"name":"pallab.gain","email":"pallab.gain@gmail.com"},{"name":"balazskreith","email":"balazs.kreith@gmail.com"}],"homepage":"https://github.com/observertc/sfu-monitor-js#readme","bugs":{"url":"https://github.com/observertc/sfu-monitor-js/issues"},"dist":{"shasum":"32733f070005f6ce23cacfb28d8902b68fd936ab","tarball":"https://registry.npmjs.org/@observertc/sfu-monitor-js/-/sfu-monitor-js-1.1.0-SNAPSHOT.6b7100257ac4bf507f5ffcc21b273a3b6b989a99.tgz","fileCount":231,"integrity":"sha512-hYZ4vBjhGfKB+we9ipwVa12PHmmghWkAjachOWm5kj2D9pxYRJHIO/l3Legyw26siXGHrRyYyHkqNtMVcQxDYg==","signatures":[{"sig":"MEUCIQCtPoLhLmqFRUU1Im3Y1IPHkbuO9sbocFiz3n+5qlaA7wIgQWUvUX5h6IrJc8nvhuoe18REb4Lkbksp3ez98SDL8rs=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":1685973,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjrARWACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmpW/xAAk3IcvO3uzDeN986AJU08wYz7cECMm+xkGklRgjQMIfvNgwp2\r\nFQol9wnju7Hj3KnKkEP4S4PZI4cSNReIaJ/oXTXXC6GstHSkn85PJkNBVH8l\r\nJ4E0ipK/GVAwJFqjOYApZ2o5sa/hjnXOPSSah/BPsD6TJefL2tVxR6CpOOic\r\nm8GOs3GQNhvusQwlF5GO7B5ARxF59pzdADhzektzeg4IFVJBrjQuQXBZKjXZ\r\nUJ595+3UWjlwpiqw+wzPVVaD/8V27PRdCGor1W8yx3SYoi3wQQW04nR8J0vB\r\nxKKDTdVON86blsq7jQF8xcvGQW+T28767bBGe8IdiYEECxYuUheVMLLQmxSB\r\nVHg9hVM5uMdkiv1BosA3NDoKSd71USh09GwAZHSf/eFwpAR99Eh3UmkMAa0w\r\nEBf2oQzEzDiwHg5Wnz7tfJPEDTdMkEpXSYOovIJjQ45Vqd8fh7O+fk3nAIPG\r\n5J1jL2GK6Or5MwKwT6MlPsaauvR1lt5+I8GkHm0eb7J5dSkqFfLT1lLOOTaH\r\nv71AqvZQVOiGIHzbFAB1JRzEH6M+aU959QRts64by6XT4qjGiZPPPcnfGPGt\r\nohONyCWm9+NqIGm312ZlRFsqLkDeqTZKTcapTAihbpj3C+7Sf4IFydi0GmqS\r\n+a/RGimPOlPWcxsyxxk9492wFnuHbL4IyUw=\r\n=tY9n\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","types":"lib/index.d.ts","engines":{"node":">=10"},"gitHead":"6b7100257ac4bf507f5ffcc21b273a3b6b989a99","scripts":{"lint":"eslint -c .eslintrc.js src/*","test":"jest --config jest.config.js --runInBand","build":"tsc","prepare":"npm run build","preversion":"npm run lint","prepublishOnly":"npm test && npm run lint"},"_npmUser":{"name":"balazskreith","email":"balazs.kreith@gmail.com"},"repository":{"url":"git+https://github.com/observertc/sfu-monitor-js.git","type":"git"},"_npmVersion":"6.14.17","description":"ObserveRTC SFU Integration Core Library","directories":{},"_nodeVersion":"14.21.1","dependencies":{"ws":"^8.5.0","uuid":"^8.3.2","loglevel":"^1.8.0","@types/ws":"^8.5.3","js-base64":"^3.7.2","js-sha256":"^0.9.0","protobufjs":"^6.11.2","@types/uuid":"^8.3.4","@types/events":"^3.0.0","@observertc/schemas":"^2.2.0"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.5.0","eslint":"^8.12.0","ts-jest":"^27.1.4","bufferutil":"^4.0.6","typescript":"^4.6.3","@types/jest":"^27.4.0","utf-8-validate":"^5.0.9","@typescript-eslint/parser":"^5.18.0","@typescript-eslint/eslint-plugin":"^5.18.0"},"_npmOperationalInternal":{"tmp":"tmp/sfu-monitor-js_1.1.0-SNAPSHOT.6b7100257ac4bf507f5ffcc21b273a3b6b989a99_1672217685835_0.37710342754430837","host":"s3://npm-registry-packages"},"deprecated":"Package no longer supported. Contact Support at https://www.npmjs.com/support for more info."},"1.1.1-SNAPSHOT.cd9ba0673a3bf143f62a307c6ad88526636a0dd2":{"name":"@observertc/sfu-monitor-js","version":"1.1.1-SNAPSHOT.cd9ba0673a3bf143f62a307c6ad88526636a0dd2","keywords":["webrtc","getStats","observertc","sfu","integration"],"author":{"name":"Balazs Kreith"},"license":"Apache-2.0","_id":"@observertc/sfu-monitor-js@1.1.1-SNAPSHOT.cd9ba0673a3bf143f62a307c6ad88526636a0dd2","maintainers":[{"name":"pallab.gain","email":"pallab.gain@gmail.com"},{"name":"balazskreith","email":"balazs.kreith@gmail.com"}],"homepage":"https://github.com/observertc/sfu-monitor-js#readme","bugs":{"url":"https://github.com/observertc/sfu-monitor-js/issues"},"dist":{"shasum":"d714ad6001e2166bf609ac0f6b9f28c8e10e0667","tarball":"https://registry.npmjs.org/@observertc/sfu-monitor-js/-/sfu-monitor-js-1.1.1-SNAPSHOT.cd9ba0673a3bf143f62a307c6ad88526636a0dd2.tgz","fileCount":231,"integrity":"sha512-oAVbmbFDBuPJXv0FhROh5QWqUe0vFLSUpmYTxweUw1PaW0ZlktiUOHQaAVczqlasyM11TwD3NFnUWt+NdN7Wdg==","signatures":[{"sig":"MEQCIFFn3+5Dxs/6Z+QDHqVwuaq2G8wuOwsK1OSGBD694BpUAiBohXdUIntW9JycKcuiHcQmy/q4pvEbXmHuxdaOIGcGLg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":1685972,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjrASzACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmq/Uw//dv9rD0j2hs26jcH2sjGsjPa8CgY9RPm4w+xlccIIJ7btq8rB\r\nSrlU/a6N8fD1QWL9Col2zboAdw/8ucok9GGgNLytypBtf1V1oSGi/cPByRv/\r\n9+ODAMLukxrCnQhR4nP2FaTNufSdMN0P+W7chPfcAY1ZfWGpyfwErc4MT4Zt\r\nSA0t7tMTsJs+SUlqTQPPZCcPybpZMTJ4jJyuzmjUu+bFIEO/6/zBOE3qJVZ8\r\nVjZqRcfjziaio/A71mah6MSH3CM2vo/jCIMAOkuz5n+mJUwELRbR2K/SvkDc\r\ndTS+MP8iJVwqRXjJ+OPU4G/DD1T1mjpFxPy5n2DNQKFuxgJFvr976w7oZkg7\r\nwhuus8ssMSU4B+nlCooUmCgCRf6uIs46dERwb1RPdONdkBeg3HAWhGRAqWWG\r\nG71m13RUN3fUAxk6injWzoA9BpDSVcJbsM1wGHy9pa7h/Lge5CeaPml6yKuU\r\nCo+0AlE7F85lXSE0gJcGSqfnRPLB6S/cYkikrrh0pnrbVfyh7PHVRU0lSqNn\r\nLJQXtqV36Wg6xDdymj1KgB/Zw+zJ7eYzGmpnnpezZjsbm7KBz6gtc6GFtb6D\r\nI3+FjDoRkJefddK+mC7+gBeS09qGnBe5O8I1yks4qsSyCZjUSuvFzMpgZbmz\r\nR6Kxd5ygRXOaCR60jksAlqNJgaPbhHGutKQ=\r\n=hAgI\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","types":"lib/index.d.ts","engines":{"node":">=10"},"gitHead":"cd9ba0673a3bf143f62a307c6ad88526636a0dd2","scripts":{"lint":"eslint -c .eslintrc.js src/*","test":"jest --config jest.config.js --runInBand","build":"tsc","prepare":"npm run build","preversion":"npm run lint","prepublishOnly":"npm test && npm run lint"},"_npmUser":{"name":"balazskreith","email":"balazs.kreith@gmail.com"},"repository":{"url":"git+https://github.com/observertc/sfu-monitor-js.git","type":"git"},"_npmVersion":"6.14.17","description":"ObserveRTC SFU Integration Core Library","directories":{},"_nodeVersion":"14.21.1","dependencies":{"ws":"^8.5.0","uuid":"^8.3.2","loglevel":"^1.8.0","@types/ws":"^8.5.3","js-base64":"^3.7.2","js-sha256":"^0.9.0","protobufjs":"^6.11.2","@types/uuid":"^8.3.4","@types/events":"^3.0.0","@observertc/schemas":"2.2.0"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.5.0","eslint":"^8.12.0","ts-jest":"^27.1.4","bufferutil":"^4.0.6","typescript":"^4.6.3","@types/jest":"^27.4.0","utf-8-validate":"^5.0.9","@typescript-eslint/parser":"^5.18.0","@typescript-eslint/eslint-plugin":"^5.18.0"},"_npmOperationalInternal":{"tmp":"tmp/sfu-monitor-js_1.1.1-SNAPSHOT.cd9ba0673a3bf143f62a307c6ad88526636a0dd2_1672217778956_0.19146368406282765","host":"s3://npm-registry-packages"},"deprecated":"Package no longer supported. Contact Support at https://www.npmjs.com/support for more info."},"1.1.1":{"name":"@observertc/sfu-monitor-js","version":"1.1.1","keywords":["webrtc","getStats","observertc","sfu","integration"],"author":{"name":"Balazs Kreith"},"license":"Apache-2.0","_id":"@observertc/sfu-monitor-js@1.1.1","maintainers":[{"name":"pallab.gain","email":"pallab.gain@gmail.com"},{"name":"balazskreith","email":"balazs.kreith@gmail.com"}],"homepage":"https://github.com/observertc/sfu-monitor-js#readme","bugs":{"url":"https://github.com/observertc/sfu-monitor-js/issues"},"dist":{"shasum":"5cccd5b7920d749ddc69a0b14ad9fa7053f642bb","tarball":"https://registry.npmjs.org/@observertc/sfu-monitor-js/-/sfu-monitor-js-1.1.1.tgz","fileCount":231,"integrity":"sha512-WsNGcQyLjnyZLe/0C9WpNTQHdeavNyq3PwBZFDNo6BiZ8k39GcI6SGhCKvTyaHGUXjmLtSS9XAuqPJFvgAVJIg==","signatures":[{"sig":"MEUCIBNGub0Dd0PystBF8uFp6xIIeocn2JwHg0f+vKSTm45bAiEAiNVAYlTGWxMxEUqA78nT2ieVY36D3B4jZ2kTZBPh4q0=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":1685922,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjrAVPACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmrlnA//VK9TbT7wVCr5niADNAEzBL+qR+fNIfVxCWm1DzrSR/zS5lWk\r\nhBwr2st5YJuAuXokH8lv/MMGKbvxLaqJ78lvpaG1KMScLDRZZKD8LVPXrSfr\r\nOpGytqzmN1c1nYK5jcHbs6lIh1/q19C2fc7uMxqWsnb4QSeW8C5/CsVAGVEi\r\nNs999Aop4B50+ZvCxe1IGgHyqB+TMht8+WFNDxT8WeXTTDwOUy2CMBA9B/P1\r\n5KDbMmJl31G0HgZmwsVaS5zlbYhwTOj7q5rqNNKHSqGLJw84H0LOH9l14ujy\r\nFgDJm83mBVFLTyf5OIpNuFwPZtHqxwmvytLQ9q1wP5bV8OCC4PGiSq8p0Ckc\r\nhaPC4ykN8+DSweXDy6w0tr2gj+wqPm3iACtgx860jsl4kDkZR+IGF4heyTxQ\r\nsgeRXqiGIoq6RWDKwR78NCNosAgVBtjh7qBrNoCc53oaPkyqAXhsx7dVFZj5\r\naHtbvxjBwJo15ahpBKPE7RrCm9LMxKG1XMDMthAckxxlXfmIHzj7cCWZ+yAu\r\nwpMO+9+xP+yOLJ9xWggcAtkrD9jgcHBCg9UdVPgbGdCkj7OZaMdmlGjhf4iY\r\nyYxBYWg6gg/mdl54WQTWppQ5WDGEhHkuf4yTU2zaXU8KhXh5kE4mTMvH9xv0\r\nExH6ZWo9mcKhJpyA2FOCmehVN9ahou6V6L8=\r\n=5i90\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","types":"lib/index.d.ts","engines":{"node":">=10"},"gitHead":"d905d8871d09618d2442bf0a6032ffadfb55058d","scripts":{"lint":"eslint -c .eslintrc.js src/*","test":"jest --config jest.config.js --runInBand","build":"tsc","prepare":"npm run build","preversion":"npm run lint","prepublishOnly":"npm test && npm run lint"},"_npmUser":{"name":"balazskreith","email":"balazs.kreith@gmail.com"},"repository":{"url":"git+https://github.com/observertc/sfu-monitor-js.git","type":"git"},"_npmVersion":"6.14.17","description":"ObserveRTC SFU Integration Core Library","directories":{},"_nodeVersion":"14.21.1","dependencies":{"ws":"^8.5.0","uuid":"^8.3.2","loglevel":"^1.8.0","@types/ws":"^8.5.3","js-base64":"^3.7.2","js-sha256":"^0.9.0","protobufjs":"^6.11.2","@types/uuid":"^8.3.4","@types/events":"^3.0.0","@observertc/schemas":"2.2.0"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.5.0","eslint":"^8.12.0","ts-jest":"^27.1.4","bufferutil":"^4.0.6","typescript":"^4.6.3","@types/jest":"^27.4.0","utf-8-validate":"^5.0.9","@typescript-eslint/parser":"^5.18.0","@typescript-eslint/eslint-plugin":"^5.18.0"},"_npmOperationalInternal":{"tmp":"tmp/sfu-monitor-js_1.1.1_1672217935617_0.0928922109483099","host":"s3://npm-registry-packages"},"deprecated":"Package no longer supported. Contact Support at https://www.npmjs.com/support for more info."},"2.0.1-46de52e.0":{"name":"@observertc/sfu-monitor-js","version":"2.0.1-46de52e.0","keywords":["webrtc","getStats","observertc","sfu","integration"],"author":{"name":"Balazs Kreith"},"license":"Apache-2.0","_id":"@observertc/sfu-monitor-js@2.0.1-46de52e.0","maintainers":[{"name":"pallab.gain","email":"pallab.gain@gmail.com"},{"name":"balazskreith","email":"balazs.kreith@gmail.com"}],"homepage":"https://github.com/observertc/sfu-monitor-js#readme","bugs":{"url":"https://github.com/observertc/sfu-monitor-js/issues"},"dist":{"shasum":"499b6ae6dcda9b20d5ef18611ad81db771d75859","tarball":"https://registry.npmjs.org/@observertc/sfu-monitor-js/-/sfu-monitor-js-2.0.1-46de52e.0.tgz","fileCount":111,"integrity":"sha512-JYYEiPL/Tfx7srWXHU4C7KxPKd4fI4o5JXsfkuGxYS3Hu4LDvcavJ9WEXHlcsc4mSz2Trzsw41cUIe1ZojwETw==","signatures":[{"sig":"MEUCIQCXgZWmQbEnayI9wE8rXZFT50ER+bYvE4hC5+1rOFpKbgIgZoBCMq4i2IsCccKngCsDXWPFT5eMILf2/5RcMZLrZXw=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":279726,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJkOWnlACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmr7LxAAkI3EOqP9fEmVj6lz3aNrvXitFQByM7EEw0jbwH5ljRP1CVLE\r\nZKPsljLd/XeJGOtgswAMG3ixFk58eEgDtIoY4/7FG7NHyGoX/qJex/Z+UEUA\r\n7DA+u8gbchL/12VaKK7J+PJ3wAbOwKxJlnZT8iZaGoKfr5e/nqbpa9fGD8so\r\nrHwzme8o5iFC597zPNPAwI4KeJ2F2CeQyezWCl8EcraEqzdpritO6Bggy2wd\r\nbRNsiPVU3Kb4mRhsLrT3TKSe+R+fh5UtCcrosBjn4roIezgHYTHfsGoXSqEE\r\n0z8PThDfDLEs77GMJDlUcIeFAQ06YgAmotz5jnU7wujukusaX7QKU37JNARO\r\n36Xvdf6LQbG0eUO7ZdxgF22hxTqbAWOCaScOXHCUBOjpZkS3+/E9CwP/MF2j\r\nePBdQdAVkStvO+hzaS9nZWcKIwQn5j8rP4/rfW73YFEozXguBtIW9eeqvg9J\r\nXLAJYU67ykBTBV4Twcnobph51G3PEiu3JHr2gaXOibHlKHoKHZFiuAiO3DMV\r\n+c5T1GWyEg0O3EwJmnoou0rBqG/0RW2Ei2jKk56GpZVrO09Mmc/Fw5A0y5rf\r\nWNacKArxgui4V8Lw5Z0veiBqrt2NBsGuYQozgGQnIxTXxc3dTRFoGsoVN3V0\r\ngGNLj/sZj2Mo9wtkNCgryryRHPfZYUDIt5A=\r\n=MsTr\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","types":"lib/index.d.ts","readme":"## Javascript library to monitor Selective Forwarding Units (SFU)\n\n`@observertc/sfu-monitor-js` is javascript library to monitor your SFU and integrate with ObserveRTC.\n\nTable of Contents:\n\n-   [Quick Start](#quick-start)\n    -   [Integrate Mediasoup](#integrate-mediasoup)\n    -   [Integrate other type of SFUs](#integrate-other-type-of-sfus)\n-   [Sfu Monitor Storage](#sfu-monitor-storage)\n-   [Configurations](#configurations)\n-   [API docs](#api-docs)\n-   [NPM package](#npm-package)\n-   [Schemas](#schemas)\n-   [Getting Involved](#getting-involved)\n-   [License](#license)\n\n## Qucik Start\n\nInstall the library by using NPM:\n\n```\nnpm i @observertc/sfu-monitor-js\n```\n\nOnce the library is installed, you need to integrate it.\nThe first step is to setup a monitor in your application.\n\n```javascript\nimport { SfuMonitor } from \"@observertc/sfu-monitor-js\";\n// see full config in Configuration section\nconst config = {\n    collectingPeriodInMs: 5000,\n    samplingPeriodInMs: 10000,\n    sendingPeriodInMs: 10000,\n    sender: {\n        websocket: {\n            urls: [\"ws://localhost:7080/samples/myServiceId/myMediaUnitId\"],\n        },\n    },\n};\nconst monitor = SfuMonitor.create(config);\n```\n\nA monitor does three things: 1. Collect Stats 2. Make sample based on the collected stats 3. Send the sample to the [observer](https://github.com/ObserveRTC/observer)\n\n### Integrate Mediasoup\n\nTo integrate [mediasoup:3^](https://mediasoup.org/documentation/v3/) you can use the built-in MediasoupCollector.\n\n```javascript\nimport mediasoup from \"mediasoup\";\nimport { createMediasoupMonitor } from \"@observertc/sfu-monitor-js\";\n\nconst monitor = createMediasoupMonitor({\n    collectingPeriodInMs: 5000,\n    mediasoup,\n});\n```\n\nWith this configuration the monitor automatically add and remove mediasoup objects. \n\n```javascript\nmonitor.events.onStatsCollected(() => {\n    const storage = monitor.storage\n    console.log(`Mediasoup SFU has ${storage.getNumberOfInboundRtpPads()} incoming RTP stream`);\n    console.log(`Mediasoup SFU has ${storage.getNumberOfOutboundRtpPads()} outgoing RTP stream`);\n    console.log(`Mediasoup SFU has ${storage.getNumberOfAudioSinks()} audio consumers`);\n    console.log(`Mediasoup SFU has ${storage.getNumberOfVideoSinks()} video consumers`);\n    console.log(`Mediasoup SFU has ${storage.getNumberOfMediaSinks()} consumers`);\n    console.log(`Mediasoup SFU has ${storage.getNumberOfAudioStreams()} audio producers`);\n    console.log(`Mediasoup SFU has ${storage.getNumberOfVideoStreams()} video producers`);\n    console.log(`Mediasoup SFU has ${storage.getNumberOfMediaStreams()} producers`);\n    console.log(`Mediasoup SFU has ${storage.getNumberOfTransports()} transports`);\n\n    for (const audioSink of storage.audioSinks()) {\n        console.log(`audio consumer ${audioSink.id} belongs to transport ${audioSink.getTransport()?.id} has the following outbound RTP stats`);\n        for (const outboundRtp of audioSink.outboundRtpPads()) {\n            console.log(`RTP Pad: ${outboundRtp.id}`, outboundRtp.stats);\n        }\n    }\n});\n```\n\nBy default it does not call `getStats` as it turned out to be performance intensive in some cases. \nIf you want the collector to call the getStats on objects you can change the configuration like:\n\n```javascript\nconst monitor = createMediasoupMonitor({\n    collectingPeriodInMs: 5000,\n    mediasoup,\n    mediasoupCollector: {\n        pollWebRtcTransportStats: (transportId) => true,\n        pollPlainRtpTransportStats: (transportId) => true,\n        pollPipeTransportStats: (transportId) => true,\n        pollDirectTransportStats: (transportId) => true,\n        pollProducerStats: (producerId) => true,\n        pollConsumerStats: (consumerId) => true,\n        pollDataProducerStats: (dataProducerId) => true,\n        pollDataConsumerStats: (dataProducerId) => true,\n    }\n});\n```\n\n### Integrate other type of SFUs\n\nTo have a custom integration you could use `AuxCollector` as follows:\n\n```javascript\nimport { AuxCollector } from \"@observertc/sfu-monitor-js\";\n\nconst collector = AuxCollector.create();\nmonitor.addStatsCollector(collector);\n\nconst transportId = \"myUniqueGeneratedTransportId\"\ncollector.addTransportStatsSupplier(transportId, async () => {\n    const stats: SfuTransport = {\n\n    };\n    return stats;\n});\n// when you want to remove it:\ncollector.removeTransportStatsSupplier(transportId);\n\n// similarly:\ncollector.addInboundRtpPadStatsSupplier(\"padId\", ...);\ncollector.removeInboundRtpPadStatsSupplier(\"padId\");\n\ncollector.addOutboundRtpPadStatsSupplier(\"padId\", ...);\ncollector.removeOutboundRtpPadStatsSupplier(\"padId\");\n\ncollector.addSctpStreamStatsSupplier(\"channelId\", ...);\ncollector.removeSctpStreamSupplier(\"channelId\");\n```\n\n## Sfu Monitor Storage\n\nSfu Monitor collects measurements about the following components:\n\n-   **Transport**: Represent a network transport connection between an SFU and an external endpoint\n-   **Inbound RTP Pad**: Represents an ingress point for RTP sessions to the SFU.\n-   **Outbound RTP Pad**: Represents an eggress point for RTP sessions from the SFU.\n-   **Media Stream**: Represent a group of inbound RTP pads belong to the same outbound media track\n-   **Media Sink**: Represent a group of outbound RTP pads belong to the same inbound media track\n-   **SCTP Channel**: Represent an SCTP session\n\nSfu Monitor Storage provided entries can be used to navigate from one collected components to another.\n\n![Storage Navigations](puml/navigation.png)\n\nEntries:\n\n-   [Transport](#transport-entries)\n-   [Inbound RTP](#inbound-rtp-entries)\n-   [Outbound RTP](#outbound-rtp-entries)\n-   [Media Stream](#media-stream-entries)\n-   [Media Sink](#media-sink-entries)\n-   [SCTP Channel](#sctp-channel-entries)\n\n### Transport Entries\n\n```javascript\nconst storage = monitor.storage;\nfor (const transport of storage.transports()) {\n    console.log(`Transport (${transport.id}) stats:`, transport.stats);\n\n    for (const inboundRtpPad of transport.inboundRtpPads()) {\n        console.log(\n            `Inbound Rtp Pad (${inboundRtpPad.id}) belongs to transport (${transport.id}) stats:`,\n            inboundRtpPad.stats\n        );\n    }\n    for (const outboundRtpPad of transport.outboundRtpPads()) {\n        console.log(\n            `Outbound Rtp Pad (${outboundRtpPad.id}) belongs to transport (${transport.id}) stats:`,\n            outboundRtpPad.stats\n        );\n    }\n    for (const sctpChannel of transport.sctpChannels()) {\n        console.log(\n            `SCTP channel (${sctpChannel.id}) belongs to transport (${transport.id}) stats:`,\n            sctpChannel.stats\n        );\n    }\n    for (const mediaSink of transport.mediaSinks()) {\n        console.log(`Transport (${transport.id}) has a ${mediaSink.kind} \n            sink having ${mediaSink.getNumberOfOutboundRtpPads()} outbound Rtp pads`);\n    }\n    for (const mediaStream of transport.mediaStreams()) {\n        console.log(`Transport (${transport.id}) has a ${mediaStream.kind} \n            sink having ${mediaStream.getNumberOfInboundRtpPads()} inbound Rtp pads`);\n    }\n}\n```\n\n### Inbound RTP Entries\n\n```javascript\nfor (const inboundRtpPad of storage.inboundRtpPads()) {\n    // the transport the inbound rtp pad belongs to\n    const transport = inboundRtpPad.getTransport();\n    // the media stream the inbound rtp pad belongs to\n    const mediaStream = inboundRtpPad.getMediaStream();\n}\n```\n\n### Outbound RTP Entries\n\n```javascript\nfor (const outboundRtpPad of storage.outboundRtpPads()) {\n    // the transport the outbound rtp pad belongs to\n    const transport = outboundRtpPad.getTransport();\n\n    // the media stream the outbound rtp pad belongs to\n    const mediaStream = outboundRtpPad.getMediaStream();\n\n    // the media sink the outbound rtp pad belongs to\n    const mediaSInk = outboundRtpPad.getMediaSink();\n}\n```\n\n### Media Stream Entries\n\n```javascript\nfor (const mediaStream of storage.mediaStreams()) {\n    // the transport the media stream belongs to\n    const transport = mediaStream.getTransport();\n\n    for (const inboundRtpPad of mediaStream.inboundRtpPads()) {\n        console.log(\n            `Inbound Rtp Pad (${inboundRtpPad.id}) belongs to media stream (${mediaStream.id}) stats:`,\n            inboundRtpPad.stats\n        );\n    }\n    for (const mediaSink of mediaStream.mediaSinks()) {\n        console.log(`Media stream (${mediaStream.id}) has a ${mediaSink.kind} \n            sink having ${mediaSink.getNumberOfOutboundRtpPads()} outbound Rtp pads`);\n    }\n}\n```\n\n### Media Sink Entries\n\n```javascript\nfor (const mediaSink of storage.mediaSinks()) {\n    // the transport the media stream belongs to\n    const transport = mediaSink.getTransport();\n\n    // the media stream the media sink belongs to\n    const mediaStream = mediaSink.getMediaSink();\n\n    for (const outboundRtpPad of mediaSink.outboundRtpPads()) {\n        console.log(\n            `Outbound Rtp Pad (${outboundRtpPad.id}) belongs to media stream (${mediaSink.id}) stats:`,\n            outboundRtpPad.stats\n        );\n    }\n}\n```\n\n### SCTP Channel Entries\n\n```javascript\nfor (const sctpChannel of storage.sctpChannels()) {\n    // the transport the sctp channel belongs to\n    const transport = sctpChannel.getTransport();\n}\n```\n\n## Configurations\n\n```javascript\nconst config = {\n    /**\n     * By setting it, the monitor calls the added statsCollectors periodically\n     * and polls the stats.\n     *\n     * DEFAULT: undefined\n     */\n    collectingPeriodInMs: 5000,\n    /**\n     * By setting it, the monitor make samples periodically.\n     *\n     * DEFAULT: undefined\n     */\n    samplingPeriodInMs: 10000,\n\n    /**\n     * By setting it stats items and entries are deleted if they are not updated.\n     *\n     * DEFAULT: 60000\n     */\n    statsExpirationTimeInMs: 60000,\n\n    /**\n     * Sampling Component Related configurations\n     *\n     */\n    sampler: {\n            /**\n         * The identifier of the SFU.\n         *\n         * DEFAULT: a generated unique value\n         */\n        sfuId: \"sfuId\",\n\n        /**\n         * Indicate if the sampler only sample stats updated since the last sampling.\n         *\n         * DEFAULT: true\n         */\n        incrementalSampling: true,\n    },\n    sender: {\n        /**\n         * Configure the codec used to transport samples or receieve\n         * feedback from the server.\n         *\n         * Possible values: json, protobuf\n         *\n         * DEFAULT: json\n         *\n         */\n        format: \"json\",\n        /**\n         * Websocket configuration to transport the samples\n         */\n        websocket: {\n            /**\n             * The target urls the websocket is opened for\n             */\n            urls: [\"ws://localhost:7080/samples/myServiceId/myMediaUnitId\"],\n            /**\n             * The maximum number of try to connect to the server\n             *\n             * DEFAULT: 3\n             */\n            maxRetry: 1,\n            /**\n             * An optional field for additional socket option from ws package\n             */\n            socketOptions: {\n\n            },\n        },\n        /**\n         * Configuration to setup a REST api transport method for the samples.\n         */\n        rest: {\n            /**\n             * The target url the websocket is opened for\n             */\n            urls: [\"http://localhost:7080/rest/samples/myServiceId/myMediaUnitId\"];\n            /**\n             * The maximum number of try to connect to the server\n             *\n             * DEFAULT: 3\n             */\n            maxRetry: 1,\n        },\n    }\n};\n```\n\n## API docs\n\nhttps://observertc.github.io/sfu-monitor-js/interfaces/SfuMonitor.html\n\nGenerate docs:\n```\ntypedoc --out docs ./src\n```\n\n## NPM package\n\nhttps://www.npmjs.com/package/@observertc/sfu-monitor-js\n\n## Schemas\n\nhttps://github.com/observertc/schemas\n\n## Getting Involved\n\nSfu-monitor is made with the intention to provide an open-source monitoring solution for\nWebRTC developers. We develop new features and maintaining the current\nproduct with the help of the community. If you are interested in getting involved\nplease read our [contribution](CONTRIBUTING.md) guideline.\n\n## License\n\nApache-2.0\n","engines":{"node":">=10"},"gitHead":"46de52ed5ad69d15fb35412dcfc8c96cb6b73a38","scripts":{"lint":"eslint -c .eslintrc.js src/*","test":"jest --config jest.config.js --runInBand","build":"tsc","prepare":"npm run build","prepublish":"pkgfiles","preversion":"npm run lint","prepublishOnly":"npm test && npm run lint"},"_npmUser":{"name":"balazskreith","email":"balazs.kreith@gmail.com"},"repository":{"url":"git+https://github.com/observertc/sfu-monitor-js.git","type":"git"},"_npmVersion":"6.14.18","description":"ObserveRTC SFU Integration Core Library","directories":{},"_nodeVersion":"14.21.3","dependencies":{"uuid":"^8.3.2","@types/ws":"^8.5.3","@types/uuid":"^8.3.4","@types/events":"^3.0.0","@observertc/sample-schemas-js":"2.2.1-rc.0"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.5.0","eslint":"^8.12.0","ts-jest":"^27.1.4","pkgfiles":"2.3.0","bufferutil":"^4.0.6","typescript":"^4.6.3","@types/jest":"^27.4.0","utf-8-validate":"^5.0.9","@typescript-eslint/parser":"^5.18.0","@typescript-eslint/eslint-plugin":"^5.18.0"},"_npmOperationalInternal":{"tmp":"tmp/sfu-monitor-js_2.0.1-46de52e.0_1681484261208_0.30960533101850807","host":"s3://npm-registry-packages"},"deprecated":"Package no longer supported. Contact Support at https://www.npmjs.com/support for more info."},"2.0.1-5bf369d.0":{"name":"@observertc/sfu-monitor-js","version":"2.0.1-5bf369d.0","keywords":["webrtc","getStats","observertc","sfu","integration"],"author":{"name":"Balazs Kreith"},"license":"Apache-2.0","_id":"@observertc/sfu-monitor-js@2.0.1-5bf369d.0","maintainers":[{"name":"pallab.gain","email":"pallab.gain@gmail.com"},{"name":"balazskreith","email":"balazs.kreith@gmail.com"}],"homepage":"https://github.com/observertc/sfu-monitor-js#readme","bugs":{"url":"https://github.com/observertc/sfu-monitor-js/issues"},"dist":{"shasum":"cf8183610ad95853c41315629fbb9c03b8775a8d","tarball":"https://registry.npmjs.org/@observertc/sfu-monitor-js/-/sfu-monitor-js-2.0.1-5bf369d.0.tgz","fileCount":111,"integrity":"sha512-h0U4w2NXI0nXX/Qz7W16ARbqCr0xJzo9lZfM9ji/fl1FEuE2l36jOSuk3xAPZm5GO1GgVH1NIyolmdiG83vTXg==","signatures":[{"sig":"MEUCICtSdbX/P3EciUSfSKoI3S9lM5UZDGNiG98JC/CLGjDWAiEA1gJkG1YMZmEIGlhNb7vzDyMXpA5YxHZCKWmFHRtBuaA=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":282882,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJkOinxACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmouXg//fzTbT0SkYPpKb/feYFecRGGuWvVqf53sIItR+XRwdlNHR9s5\r\nxXB2b5aw5ueTiOEUZkXgGcgIZj54Fia92dboTb2gGcuF8BP7q5wMFEwZccNa\r\nTxhUPgJI1E5SR8Fh4OsqxmFx1FvjLhiobUpzZcWO1dn/DhC58PQE2P/oZ3/u\r\nZQ7DSisMq9dbWnGci9PTEjuGaIbcQnoMSJrI2cvHZ+Njc74rM5dDkxu7Y0K9\r\n3dHBN0+ZjN/jFY20/5wM6NdG5esFlbXQ1+rNwRPP4JNXcaVlw/ltIH3VrnvZ\r\nDcNegKlDvV23zd6DccnMLtVIW61JMhadEAm0PpXNAIGlUXjNLJ38msOFN/+P\r\n5vgbiGYx8txIiKpvMNbVZrbsz1ByBoa17ttk69Hrw2f0il2ZhcrQUb4OrQdR\r\ntZW32X0otSSY+iWoCTsSpphECv9U85dRHe4357uCDUSMUifcfxNOeLxkwvN1\r\nTTpIhCCXqXVi3q7kMR8DxxzJKcKXi6KdPAsiwTtdWlUla72fgb4gzR6dQaEf\r\ngTUP33AroWAeW3Vg+dNDhQWfbJiM8T4RfQxBWirVBBkjilpdatf27mgLuOyX\r\n5FvlQXG9JQfBXPZXnTi5jvKF0qeGDgCSnvb0x76b9RG9LE5i004XfdvkuMjA\r\nWDH3ibLEzR5PuAuOGoI7NxRr5ZnY5VrEbHc=\r\n=+hoc\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","types":"lib/index.d.ts","readme":"## Javascript library to monitor Selective Forwarding Units (SFU)\n\n`@observertc/sfu-monitor-js` is javascript library to monitor your SFU and integrate with ObserveRTC.\n\nTable of Contents:\n\n-   [Quick Start](#quick-start)\n    -   [Integrate Mediasoup](#integrate-mediasoup)\n    -   [Integrate other type of SFUs](#integrate-other-type-of-sfus)\n-   [Sfu Monitor Storage](#sfu-monitor-storage)\n-   [Configurations](#configurations)\n-   [API docs](#api-docs)\n-   [NPM package](#npm-package)\n-   [Schemas](#schemas)\n-   [Getting Involved](#getting-involved)\n-   [License](#license)\n\n## Qucik Start\n\nInstall the library by using NPM:\n\n```\nnpm i @observertc/sfu-monitor-js\n```\n\nOnce the library is installed, you need to integrate it.\nThe first step is to setup a monitor in your application.\n\n```javascript\nimport { SfuMonitor } from \"@observertc/sfu-monitor-js\";\n// see full config in Configuration section\nconst config = {\n    collectingPeriodInMs: 5000,\n    samplingPeriodInMs: 10000,\n    sendingPeriodInMs: 10000,\n    sender: {\n        websocket: {\n            urls: [\"ws://localhost:7080/samples/myServiceId/myMediaUnitId\"],\n        },\n    },\n};\nconst monitor = SfuMonitor.create(config);\n```\n\nA monitor does three things: 1. Collect Stats 2. Make sample based on the collected stats 3. Send the sample to the [observer](https://github.com/ObserveRTC/observer)\n\n### Integrate Mediasoup\n\nTo integrate [mediasoup:3^](https://mediasoup.org/documentation/v3/) you can use the built-in MediasoupCollector.\n\n```javascript\nimport mediasoup from \"mediasoup\";\nimport { createMediasoupMonitor } from \"@observertc/sfu-monitor-js\";\n\nconst monitor = createMediasoupMonitor({\n    collectingPeriodInMs: 5000,\n    mediasoup,\n});\n```\n\nWith this configuration the monitor automatically add and remove mediasoup objects. \n\n```javascript\nmonitor.events.onStatsCollected(() => {\n    const storage = monitor.storage\n    console.log(`Mediasoup SFU has ${storage.getNumberOfInboundRtpPads()} incoming RTP stream`);\n    console.log(`Mediasoup SFU has ${storage.getNumberOfOutboundRtpPads()} outgoing RTP stream`);\n    console.log(`Mediasoup SFU has ${storage.getNumberOfAudioSinks()} audio consumers`);\n    console.log(`Mediasoup SFU has ${storage.getNumberOfVideoSinks()} video consumers`);\n    console.log(`Mediasoup SFU has ${storage.getNumberOfMediaSinks()} consumers`);\n    console.log(`Mediasoup SFU has ${storage.getNumberOfAudioStreams()} audio producers`);\n    console.log(`Mediasoup SFU has ${storage.getNumberOfVideoStreams()} video producers`);\n    console.log(`Mediasoup SFU has ${storage.getNumberOfMediaStreams()} producers`);\n    console.log(`Mediasoup SFU has ${storage.getNumberOfTransports()} transports`);\n\n    for (const audioSink of storage.audioSinks()) {\n        console.log(`audio consumer ${audioSink.id} belongs to transport ${audioSink.getTransport()?.id} has the following outbound RTP stats`);\n        for (const outboundRtp of audioSink.outboundRtpPads()) {\n            console.log(`RTP Pad: ${outboundRtp.id}`, outboundRtp.stats);\n        }\n    }\n});\n```\n\nBy default it does not call `getStats` as it turned out to be performance intensive in some cases. \nIf you want the collector to call the getStats on objects you can change the configuration like:\n\n```javascript\nconst monitor = createMediasoupMonitor({\n    collectingPeriodInMs: 5000,\n    mediasoup,\n    mediasoupCollector: {\n        pollWebRtcTransportStats: (transportId) => true,\n        pollPlainRtpTransportStats: (transportId) => true,\n        pollPipeTransportStats: (transportId) => true,\n        pollDirectTransportStats: (transportId) => true,\n        pollProducerStats: (producerId) => true,\n        pollConsumerStats: (consumerId) => true,\n        pollDataProducerStats: (dataProducerId) => true,\n        pollDataConsumerStats: (dataProducerId) => true,\n    }\n});\n```\n\n### Integrate other type of SFUs\n\nTo have a custom integration you could use `AuxCollector` as follows:\n\n```javascript\nimport { AuxCollector } from \"@observertc/sfu-monitor-js\";\n\nconst collector = AuxCollector.create();\nmonitor.addStatsCollector(collector);\n\nconst transportId = \"myUniqueGeneratedTransportId\"\ncollector.addTransportStatsSupplier(transportId, async () => {\n    const stats: SfuTransport = {\n\n    };\n    return stats;\n});\n// when you want to remove it:\ncollector.removeTransportStatsSupplier(transportId);\n\n// similarly:\ncollector.addInboundRtpPadStatsSupplier(\"padId\", ...);\ncollector.removeInboundRtpPadStatsSupplier(\"padId\");\n\ncollector.addOutboundRtpPadStatsSupplier(\"padId\", ...);\ncollector.removeOutboundRtpPadStatsSupplier(\"padId\");\n\ncollector.addSctpStreamStatsSupplier(\"channelId\", ...);\ncollector.removeSctpStreamSupplier(\"channelId\");\n```\n\n## Sfu Monitor Storage\n\nSfu Monitor collects measurements about the following components:\n\n-   **Transport**: Represent a network transport connection between an SFU and an external endpoint\n-   **Inbound RTP Pad**: Represents an ingress point for RTP sessions to the SFU.\n-   **Outbound RTP Pad**: Represents an eggress point for RTP sessions from the SFU.\n-   **Media Stream**: Represent a group of inbound RTP pads belong to the same outbound media track\n-   **Media Sink**: Represent a group of outbound RTP pads belong to the same inbound media track\n-   **SCTP Channel**: Represent an SCTP session\n\nSfu Monitor Storage provided entries can be used to navigate from one collected components to another.\n\n![Storage Navigations](puml/navigation.png)\n\nEntries:\n\n-   [Transport](#transport-entries)\n-   [Inbound RTP](#inbound-rtp-entries)\n-   [Outbound RTP](#outbound-rtp-entries)\n-   [Media Stream](#media-stream-entries)\n-   [Media Sink](#media-sink-entries)\n-   [SCTP Channel](#sctp-channel-entries)\n\n### Transport Entries\n\n```javascript\nconst storage = monitor.storage;\nfor (const transport of storage.transports()) {\n    console.log(`Transport (${transport.id}) stats:`, transport.stats);\n\n    for (const inboundRtpPad of transport.inboundRtpPads()) {\n        console.log(\n            `Inbound Rtp Pad (${inboundRtpPad.id}) belongs to transport (${transport.id}) stats:`,\n            inboundRtpPad.stats\n        );\n    }\n    for (const outboundRtpPad of transport.outboundRtpPads()) {\n        console.log(\n            `Outbound Rtp Pad (${outboundRtpPad.id}) belongs to transport (${transport.id}) stats:`,\n            outboundRtpPad.stats\n        );\n    }\n    for (const sctpChannel of transport.sctpChannels()) {\n        console.log(\n            `SCTP channel (${sctpChannel.id}) belongs to transport (${transport.id}) stats:`,\n            sctpChannel.stats\n        );\n    }\n    for (const mediaSink of transport.mediaSinks()) {\n        console.log(`Transport (${transport.id}) has a ${mediaSink.kind} \n            sink having ${mediaSink.getNumberOfOutboundRtpPads()} outbound Rtp pads`);\n    }\n    for (const mediaStream of transport.mediaStreams()) {\n        console.log(`Transport (${transport.id}) has a ${mediaStream.kind} \n            sink having ${mediaStream.getNumberOfInboundRtpPads()} inbound Rtp pads`);\n    }\n}\n```\n\n### Inbound RTP Entries\n\n```javascript\nfor (const inboundRtpPad of storage.inboundRtpPads()) {\n    // the transport the inbound rtp pad belongs to\n    const transport = inboundRtpPad.getTransport();\n    // the media stream the inbound rtp pad belongs to\n    const mediaStream = inboundRtpPad.getMediaStream();\n}\n```\n\n### Outbound RTP Entries\n\n```javascript\nfor (const outboundRtpPad of storage.outboundRtpPads()) {\n    // the transport the outbound rtp pad belongs to\n    const transport = outboundRtpPad.getTransport();\n\n    // the media stream the outbound rtp pad belongs to\n    const mediaStream = outboundRtpPad.getMediaStream();\n\n    // the media sink the outbound rtp pad belongs to\n    const mediaSInk = outboundRtpPad.getMediaSink();\n}\n```\n\n### Media Stream Entries\n\n```javascript\nfor (const mediaStream of storage.mediaStreams()) {\n    // the transport the media stream belongs to\n    const transport = mediaStream.getTransport();\n\n    for (const inboundRtpPad of mediaStream.inboundRtpPads()) {\n        console.log(\n            `Inbound Rtp Pad (${inboundRtpPad.id}) belongs to media stream (${mediaStream.id}) stats:`,\n            inboundRtpPad.stats\n        );\n    }\n    for (const mediaSink of mediaStream.mediaSinks()) {\n        console.log(`Media stream (${mediaStream.id}) has a ${mediaSink.kind} \n            sink having ${mediaSink.getNumberOfOutboundRtpPads()} outbound Rtp pads`);\n    }\n}\n```\n\n### Media Sink Entries\n\n```javascript\nfor (const mediaSink of storage.mediaSinks()) {\n    // the transport the media stream belongs to\n    const transport = mediaSink.getTransport();\n\n    // the media stream the media sink belongs to\n    const mediaStream = mediaSink.getMediaSink();\n\n    for (const outboundRtpPad of mediaSink.outboundRtpPads()) {\n        console.log(\n            `Outbound Rtp Pad (${outboundRtpPad.id}) belongs to media stream (${mediaSink.id}) stats:`,\n            outboundRtpPad.stats\n        );\n    }\n}\n```\n\n### SCTP Channel Entries\n\n```javascript\nfor (const sctpChannel of storage.sctpChannels()) {\n    // the transport the sctp channel belongs to\n    const transport = sctpChannel.getTransport();\n}\n```\n\n## Configurations\n\n```javascript\nconst config = {\n    /**\n     * By setting it, the monitor calls the added statsCollectors periodically\n     * and polls the stats.\n     *\n     * DEFAULT: undefined\n     */\n    collectingPeriodInMs: 5000,\n    /**\n     * By setting it, the monitor make samples periodically.\n     *\n     * DEFAULT: undefined\n     */\n    samplingPeriodInMs: 10000,\n\n    /**\n     * By setting it stats items and entries are deleted if they are not updated.\n     *\n     * DEFAULT: 60000\n     */\n    statsExpirationTimeInMs: 60000,\n\n    /**\n     * Sampling Component Related configurations\n     *\n     */\n    sampler: {\n            /**\n         * The identifier of the SFU.\n         *\n         * DEFAULT: a generated unique value\n         */\n        sfuId: \"sfuId\",\n\n        /**\n         * Indicate if the sampler only sample stats updated since the last sampling.\n         *\n         * DEFAULT: true\n         */\n        incrementalSampling: true,\n    },\n    sender: {\n        /**\n         * Configure the codec used to transport samples or receieve\n         * feedback from the server.\n         *\n         * Possible values: json, protobuf\n         *\n         * DEFAULT: json\n         *\n         */\n        format: \"json\",\n        /**\n         * Websocket configuration to transport the samples\n         */\n        websocket: {\n            /**\n             * The target urls the websocket is opened for\n             */\n            urls: [\"ws://localhost:7080/samples/myServiceId/myMediaUnitId\"],\n            /**\n             * The maximum number of try to connect to the server\n             *\n             * DEFAULT: 3\n             */\n            maxRetry: 1,\n            /**\n             * An optional field for additional socket option from ws package\n             */\n            socketOptions: {\n\n            },\n        },\n        /**\n         * Configuration to setup a REST api transport method for the samples.\n         */\n        rest: {\n            /**\n             * The target url the websocket is opened for\n             */\n            urls: [\"http://localhost:7080/rest/samples/myServiceId/myMediaUnitId\"];\n            /**\n             * The maximum number of try to connect to the server\n             *\n             * DEFAULT: 3\n             */\n            maxRetry: 1,\n        },\n    }\n};\n```\n\n## API docs\n\nhttps://observertc.github.io/sfu-monitor-js/interfaces/SfuMonitor.html\n\nGenerate docs:\n```\ntypedoc --out docs ./src\n```\n\n## NPM package\n\nhttps://www.npmjs.com/package/@observertc/sfu-monitor-js\n\n## Schemas\n\nhttps://github.com/observertc/schemas\n\n## Getting Involved\n\nSfu-monitor is made with the intention to provide an open-source monitoring solution for\nWebRTC developers. We develop new features and maintaining the current\nproduct with the help of the community. If you are interested in getting involved\nplease read our [contribution](CONTRIBUTING.md) guideline.\n\n## License\n\nApache-2.0\n","engines":{"node":">=10"},"gitHead":"5bf369d6572cc2903257901e3588f8cb75bcaf87","scripts":{"lint":"eslint -c .eslintrc.js src/*","test":"jest --config jest.config.js --runInBand","build":"tsc","prepare":"npm run build","prepublish":"pkgfiles","preversion":"npm run lint","prepublishOnly":"npm test && npm run lint"},"_npmUser":{"name":"balazskreith","email":"balazs.kreith@gmail.com"},"repository":{"url":"git+https://github.com/observertc/sfu-monitor-js.git","type":"git"},"_npmVersion":"6.14.18","description":"ObserveRTC SFU Integration Core Library","directories":{},"_nodeVersion":"14.21.3","dependencies":{"uuid":"^8.3.2","@types/ws":"^8.5.3","@types/uuid":"^8.3.4","@types/events":"^3.0.0","@observertc/sample-schemas-js":"2.2.1-rc.0"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.5.0","eslint":"^8.12.0","ts-jest":"^27.1.4","pkgfiles":"2.3.0","bufferutil":"^4.0.6","typescript":"^4.6.3","@types/jest":"^27.4.0","utf-8-validate":"^5.0.9","@typescript-eslint/parser":"^5.18.0","@typescript-eslint/eslint-plugin":"^5.18.0"},"_npmOperationalInternal":{"tmp":"tmp/sfu-monitor-js_2.0.1-5bf369d.0_1681533425311_0.08085034379541933","host":"s3://npm-registry-packages"},"deprecated":"Package no longer supported. Contact Support at https://www.npmjs.com/support for more info."},"2.0.1-23f7632.0":{"name":"@observertc/sfu-monitor-js","version":"2.0.1-23f7632.0","keywords":["webrtc","getStats","observertc","sfu","integration"],"author":{"name":"Balazs Kreith"},"license":"Apache-2.0","_id":"@observertc/sfu-monitor-js@2.0.1-23f7632.0","maintainers":[{"name":"pallab.gain","email":"pallab.gain@gmail.com"},{"name":"balazskreith","email":"balazs.kreith@gmail.com"}],"homepage":"https://github.com/observertc/sfu-monitor-js#readme","bugs":{"url":"https://github.com/observertc/sfu-monitor-js/issues"},"dist":{"shasum":"b8bd7d60070d2ba1e8bcf963fc27276711ca27d8","tarball":"https://registry.npmjs.org/@observertc/sfu-monitor-js/-/sfu-monitor-js-2.0.1-23f7632.0.tgz","fileCount":111,"integrity":"sha512-HfwkfKI1WJ9ViUFsuS5jPWe46QFvLlvHZunlZYlW0l/zJ7IeEaycaA8y3k18zLzB9xmKO86cvggwIedTGVTxRw==","signatures":[{"sig":"MEQCIF7hjhvvitLSNl3oB6ulOdk/92TIwL48fG9QAOQtmk/iAiBvR9S17Mu/4XsVljH6eCF/e+22ve5QERpmpgaaZQkf0Q==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":286541,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJkOkWTACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmo/ow/7Bmt5QlYu3bHv8cNsbL+QO3A7tTFpHABVJ8PWOBu7lCQjnslX\r\nqLcDCjq4BmLU0/+n/KxhvKsz03DyB9/s3uY5ahc6e9YBFNwE+Be7IRKQc/NC\r\nO+haX4q8jIInCbH7+AN2/mQI56iMiE4dpvSaSPLClFGOn9MmJ/CEbPR3WWvq\r\n+gAhJhlaHIhbmyWuXLCCwUgktxDJ9BCCb4D/+jxYTjcfYLI3DuH1Eas6dLRR\r\nQKTYZHDi3HgxL7ykDGCZJeh2LSzGq3pYa0ZzGpES6ZTGZRsFnj8KW0XmiWsv\r\nnXq0VsZRKYoZo6gj719ZzifbKOvl86khAl/3IFXmHfb2dMXdqjtlrCPrH44u\r\nzRvfClsLz8DDW4QJ55QAUbVUGdWZrKdXbNh7ksOMD+SOscjmuBFsCmSPoD+y\r\nGy+8pYapeU9BGmMw2jw13vSNrNcyIuZ0sX/jTBhFhMHO1q6bPDJMDAqdsIsE\r\nU3NaBociVH2bUKQQW/deRj4ibq3jbN8CResNlbBGiZIWpFIH2+WRe6rK10ep\r\ntA3NJY1Oikvn2zQd2LuF9wWgUAD4xX8L3wxYwWhgcYQ7M5tHhYx2vjb0fBZd\r\nt06ykBx5Hz2j8PWAM6zcTUFLWfxm88ZrJS9t7RqYAwI9vcIUVgwtvTbfPNj7\r\neUHvC6rgr7sBzof/KurdBw/haGQkkZ2c4LA=\r\n=38H7\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","types":"lib/index.d.ts","readme":"## Javascript library to monitor Selective Forwarding Units (SFU)\n\n`@observertc/sfu-monitor-js` is javascript library to monitor your SFU and integrate with ObserveRTC.\n\nTable of Contents:\n\n-   [Quick Start](#quick-start)\n    -   [Integrate Mediasoup](#integrate-mediasoup)\n    -   [Integrate other type of SFUs](#integrate-other-type-of-sfus)\n-   [Sfu Monitor Storage](#sfu-monitor-storage)\n-   [Configurations](#configurations)\n-   [API docs](#api-docs)\n-   [NPM package](#npm-package)\n-   [Schemas](#schemas)\n-   [Getting Involved](#getting-involved)\n-   [License](#license)\n\n## Qucik Start\n\nInstall the library by using NPM:\n\n```\nnpm i @observertc/sfu-monitor-js\n```\n\nOnce the library is installed, you need to integrate it.\nThe first step is to setup a monitor in your application.\n\n```javascript\nimport { SfuMonitor } from \"@observertc/sfu-monitor-js\";\n// see full config in Configuration section\nconst config = {\n    collectingPeriodInMs: 5000,\n    samplingPeriodInMs: 10000,\n    sendingPeriodInMs: 10000,\n    sender: {\n        websocket: {\n            urls: [\"ws://localhost:7080/samples/myServiceId/myMediaUnitId\"],\n        },\n    },\n};\nconst monitor = SfuMonitor.create(config);\n```\n\nA monitor does three things: 1. Collect Stats 2. Make sample based on the collected stats 3. Send the sample to the [observer](https://github.com/ObserveRTC/observer)\n\n### Integrate Mediasoup\n\nTo integrate [mediasoup:3^](https://mediasoup.org/documentation/v3/) you can use the built-in MediasoupCollector.\n\n```javascript\nimport mediasoup from \"mediasoup\";\nimport { createMediasoupMonitor } from \"@observertc/sfu-monitor-js\";\n\nconst monitor = createMediasoupMonitor({\n    collectingPeriodInMs: 5000,\n    mediasoup,\n});\n```\n\nWith this configuration the monitor automatically add and remove mediasoup objects. \n\n```javascript\nmonitor.events.onStatsCollected(() => {\n    const storage = monitor.storage\n    console.log(`Mediasoup SFU has ${storage.getNumberOfInboundRtpPads()} incoming RTP stream`);\n    console.log(`Mediasoup SFU has ${storage.getNumberOfOutboundRtpPads()} outgoing RTP stream`);\n    console.log(`Mediasoup SFU has ${storage.getNumberOfAudioSinks()} audio consumers`);\n    console.log(`Mediasoup SFU has ${storage.getNumberOfVideoSinks()} video consumers`);\n    console.log(`Mediasoup SFU has ${storage.getNumberOfMediaSinks()} consumers`);\n    console.log(`Mediasoup SFU has ${storage.getNumberOfAudioStreams()} audio producers`);\n    console.log(`Mediasoup SFU has ${storage.getNumberOfVideoStreams()} video producers`);\n    console.log(`Mediasoup SFU has ${storage.getNumberOfMediaStreams()} producers`);\n    console.log(`Mediasoup SFU has ${storage.getNumberOfTransports()} transports`);\n\n    for (const audioSink of storage.audioSinks()) {\n        console.log(`audio consumer ${audioSink.id} belongs to transport ${audioSink.getTransport()?.id} has the following outbound RTP stats`);\n        for (const outboundRtp of audioSink.outboundRtpPads()) {\n            console.log(`RTP Pad: ${outboundRtp.id}`, outboundRtp.stats);\n        }\n    }\n});\n```\n\nBy default it does not call `getStats` as it turned out to be performance intensive in some cases. \nIf you want the collector to call the getStats on objects you can change the configuration like:\n\n```javascript\nconst monitor = createMediasoupMonitor({\n    collectingPeriodInMs: 5000,\n    mediasoup,\n    mediasoupCollector: {\n        pollWebRtcTransportStats: (transportId) => true,\n        pollPlainRtpTransportStats: (transportId) => true,\n        pollPipeTransportStats: (transportId) => true,\n        pollDirectTransportStats: (transportId) => true,\n        pollProducerStats: (producerId) => true,\n        pollConsumerStats: (consumerId) => true,\n        pollDataProducerStats: (dataProducerId) => true,\n        pollDataConsumerStats: (dataProducerId) => true,\n    }\n});\n```\n\n### Integrate other type of SFUs\n\nTo have a custom integration you could use `AuxCollector` as follows:\n\n```javascript\nimport { AuxCollector } from \"@observertc/sfu-monitor-js\";\n\nconst collector = AuxCollector.create();\nmonitor.addStatsCollector(collector);\n\nconst transportId = \"myUniqueGeneratedTransportId\"\ncollector.addTransportStatsSupplier(transportId, async () => {\n    const stats: SfuTransport = {\n\n    };\n    return stats;\n});\n// when you want to remove it:\ncollector.removeTransportStatsSupplier(transportId);\n\n// similarly:\ncollector.addInboundRtpPadStatsSupplier(\"padId\", ...);\ncollector.removeInboundRtpPadStatsSupplier(\"padId\");\n\ncollector.addOutboundRtpPadStatsSupplier(\"padId\", ...);\ncollector.removeOutboundRtpPadStatsSupplier(\"padId\");\n\ncollector.addSctpStreamStatsSupplier(\"channelId\", ...);\ncollector.removeSctpStreamSupplier(\"channelId\");\n```\n\n## Sfu Monitor Storage\n\nSfu Monitor collects measurements about the following components:\n\n-   **Transport**: Represent a network transport connection between an SFU and an external endpoint\n-   **Inbound RTP Pad**: Represents an ingress point for RTP sessions to the SFU.\n-   **Outbound RTP Pad**: Represents an eggress point for RTP sessions from the SFU.\n-   **Media Stream**: Represent a group of inbound RTP pads belong to the same outbound media track\n-   **Media Sink**: Represent a group of outbound RTP pads belong to the same inbound media track\n-   **SCTP Channel**: Represent an SCTP session\n\nSfu Monitor Storage provided entries can be used to navigate from one collected components to another.\n\n![Storage Navigations](puml/navigation.png)\n\nEntries:\n\n-   [Transport](#transport-entries)\n-   [Inbound RTP](#inbound-rtp-entries)\n-   [Outbound RTP](#outbound-rtp-entries)\n-   [Media Stream](#media-stream-entries)\n-   [Media Sink](#media-sink-entries)\n-   [SCTP Channel](#sctp-channel-entries)\n\n### Transport Entries\n\n```javascript\nconst storage = monitor.storage;\nfor (const transport of storage.transports()) {\n    console.log(`Transport (${transport.id}) stats:`, transport.stats);\n\n    for (const inboundRtpPad of transport.inboundRtpPads()) {\n        console.log(\n            `Inbound Rtp Pad (${inboundRtpPad.id}) belongs to transport (${transport.id}) stats:`,\n            inboundRtpPad.stats\n        );\n    }\n    for (const outboundRtpPad of transport.outboundRtpPads()) {\n        console.log(\n            `Outbound Rtp Pad (${outboundRtpPad.id}) belongs to transport (${transport.id}) stats:`,\n            outboundRtpPad.stats\n        );\n    }\n    for (const sctpChannel of transport.sctpChannels()) {\n        console.log(\n            `SCTP channel (${sctpChannel.id}) belongs to transport (${transport.id}) stats:`,\n            sctpChannel.stats\n        );\n    }\n    for (const mediaSink of transport.mediaSinks()) {\n        console.log(`Transport (${transport.id}) has a ${mediaSink.kind} \n            sink having ${mediaSink.getNumberOfOutboundRtpPads()} outbound Rtp pads`);\n    }\n    for (const mediaStream of transport.mediaStreams()) {\n        console.log(`Transport (${transport.id}) has a ${mediaStream.kind} \n            sink having ${mediaStream.getNumberOfInboundRtpPads()} inbound Rtp pads`);\n    }\n}\n```\n\n### Inbound RTP Entries\n\n```javascript\nfor (const inboundRtpPad of storage.inboundRtpPads()) {\n    // the transport the inbound rtp pad belongs to\n    const transport = inboundRtpPad.getTransport();\n    // the media stream the inbound rtp pad belongs to\n    const mediaStream = inboundRtpPad.getMediaStream();\n}\n```\n\n### Outbound RTP Entries\n\n```javascript\nfor (const outboundRtpPad of storage.outboundRtpPads()) {\n    // the transport the outbound rtp pad belongs to\n    const transport = outboundRtpPad.getTransport();\n\n    // the media stream the outbound rtp pad belongs to\n    const mediaStream = outboundRtpPad.getMediaStream();\n\n    // the media sink the outbound rtp pad belongs to\n    const mediaSInk = outboundRtpPad.getMediaSink();\n}\n```\n\n### Media Stream Entries\n\n```javascript\nfor (const mediaStream of storage.mediaStreams()) {\n    // the transport the media stream belongs to\n    const transport = mediaStream.getTransport();\n\n    for (const inboundRtpPad of mediaStream.inboundRtpPads()) {\n        console.log(\n            `Inbound Rtp Pad (${inboundRtpPad.id}) belongs to media stream (${mediaStream.id}) stats:`,\n            inboundRtpPad.stats\n        );\n    }\n    for (const mediaSink of mediaStream.mediaSinks()) {\n        console.log(`Media stream (${mediaStream.id}) has a ${mediaSink.kind} \n            sink having ${mediaSink.getNumberOfOutboundRtpPads()} outbound Rtp pads`);\n    }\n}\n```\n\n### Media Sink Entries\n\n```javascript\nfor (const mediaSink of storage.mediaSinks()) {\n    // the transport the media stream belongs to\n    const transport = mediaSink.getTransport();\n\n    // the media stream the media sink belongs to\n    const mediaStream = mediaSink.getMediaSink();\n\n    for (const outboundRtpPad of mediaSink.outboundRtpPads()) {\n        console.log(\n            `Outbound Rtp Pad (${outboundRtpPad.id}) belongs to media stream (${mediaSink.id}) stats:`,\n            outboundRtpPad.stats\n        );\n    }\n}\n```\n\n### SCTP Channel Entries\n\n```javascript\nfor (const sctpChannel of storage.sctpChannels()) {\n    // the transport the sctp channel belongs to\n    const transport = sctpChannel.getTransport();\n}\n```\n\n## Configurations\n\n```javascript\nconst config = {\n    /**\n     * By setting it, the monitor calls the added statsCollectors periodically\n     * and polls the stats.\n     *\n     * DEFAULT: undefined\n     */\n    collectingPeriodInMs: 5000,\n    /**\n     * By setting it, the monitor make samples periodically.\n     *\n     * DEFAULT: undefined\n     */\n    samplingPeriodInMs: 10000,\n\n    /**\n     * By setting it stats items and entries are deleted if they are not updated.\n     *\n     * DEFAULT: 60000\n     */\n    statsExpirationTimeInMs: 60000,\n\n    /**\n     * Sampling Component Related configurations\n     *\n     */\n    sampler: {\n            /**\n         * The identifier of the SFU.\n         *\n         * DEFAULT: a generated unique value\n         */\n        sfuId: \"sfuId\",\n\n        /**\n         * Indicate if the sampler only sample stats updated since the last sampling.\n         *\n         * DEFAULT: true\n         */\n        incrementalSampling: true,\n    },\n    sender: {\n        /**\n         * Configure the codec used to transport samples or receieve\n         * feedback from the server.\n         *\n         * Possible values: json, protobuf\n         *\n         * DEFAULT: json\n         *\n         */\n        format: \"json\",\n        /**\n         * Websocket configuration to transport the samples\n         */\n        websocket: {\n            /**\n             * The target urls the websocket is opened for\n             */\n            urls: [\"ws://localhost:7080/samples/myServiceId/myMediaUnitId\"],\n            /**\n             * The maximum number of try to connect to the server\n             *\n             * DEFAULT: 3\n             */\n            maxRetry: 1,\n            /**\n             * An optional field for additional socket option from ws package\n             */\n            socketOptions: {\n\n            },\n        },\n        /**\n         * Configuration to setup a REST api transport method for the samples.\n         */\n        rest: {\n            /**\n             * The target url the websocket is opened for\n             */\n            urls: [\"http://localhost:7080/rest/samples/myServiceId/myMediaUnitId\"];\n            /**\n             * The maximum number of try to connect to the server\n             *\n             * DEFAULT: 3\n             */\n            maxRetry: 1,\n        },\n    }\n};\n```\n\n## API docs\n\nhttps://observertc.github.io/sfu-monitor-js/interfaces/SfuMonitor.html\n\nGenerate docs:\n```\ntypedoc --out docs ./src\n```\n\n## NPM package\n\nhttps://www.npmjs.com/package/@observertc/sfu-monitor-js\n\n## Schemas\n\nhttps://github.com/observertc/schemas\n\n## Getting Involved\n\nSfu-monitor is made with the intention to provide an open-source monitoring solution for\nWebRTC developers. We develop new features and maintaining the current\nproduct with the help of the community. If you are interested in getting involved\nplease read our [contribution](CONTRIBUTING.md) guideline.\n\n## License\n\nApache-2.0\n","engines":{"node":">=10"},"gitHead":"23f7632c55a1ebcf9fe1600d1733e7c22ce56257","scripts":{"lint":"eslint -c .eslintrc.js src/*","test":"jest --config jest.config.js --runInBand","build":"tsc","prepare":"npm run build","prepublish":"pkgfiles","preversion":"npm run lint","prepublishOnly":"npm test && npm run lint"},"_npmUser":{"name":"balazskreith","email":"balazs.kreith@gmail.com"},"repository":{"url":"git+https://github.com/observertc/sfu-monitor-js.git","type":"git"},"_npmVersion":"6.14.18","description":"ObserveRTC SFU Integration Core Library","directories":{},"_nodeVersion":"14.21.3","dependencies":{"uuid":"^8.3.2","@types/ws":"^8.5.3","@types/uuid":"^8.3.4","@types/events":"^3.0.0","@observertc/sample-schemas-js":"2.2.1-rc.0"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.5.0","eslint":"^8.12.0","ts-jest":"^27.1.4","pkgfiles":"2.3.0","bufferutil":"^4.0.6","typescript":"^4.6.3","@types/jest":"^27.4.0","utf-8-validate":"^5.0.9","@typescript-eslint/parser":"^5.18.0","@typescript-eslint/eslint-plugin":"^5.18.0"},"_npmOperationalInternal":{"tmp":"tmp/sfu-monitor-js_2.0.1-23f7632.0_1681540499284_0.001641218948746248","host":"s3://npm-registry-packages"},"deprecated":"Package no longer supported. Contact Support at https://www.npmjs.com/support for more info."},"2.0.1-4c0288d.0":{"name":"@observertc/sfu-monitor-js","version":"2.0.1-4c0288d.0","keywords":["webrtc","getStats","observertc","sfu","integration"],"author":{"name":"Balazs Kreith"},"license":"Apache-2.0","_id":"@observertc/sfu-monitor-js@2.0.1-4c0288d.0","maintainers":[{"name":"pallab.gain","email":"pallab.gain@gmail.com"},{"name":"balazskreith","email":"balazs.kreith@gmail.com"}],"homepage":"https://github.com/observertc/sfu-monitor-js#readme","bugs":{"url":"https://github.com/observertc/sfu-monitor-js/issues"},"dist":{"shasum":"fb0880f07d7d661cbd690f2a4807ab2ac0065416","tarball":"https://registry.npmjs.org/@observertc/sfu-monitor-js/-/sfu-monitor-js-2.0.1-4c0288d.0.tgz","fileCount":111,"integrity":"sha512-/rL80Ll5BbxWaoGX1ULHDVTStpq3Xecp/uR9MPoUwOslPoJX73eNKWLgWzI0IdIlMuOnU/lK+MqDw5AzdJTUVQ==","signatures":[{"sig":"MEUCIEdZLxu7GzKXshjCrKTIYN2c1kRu1Dv5J3hubIWmSM59AiEAnz2KPtv3tCEpk+8N4IP826Bf2n4AgdX2AiWIadzxGL0=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":280673,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJkOkqtACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmoPig//fAYBLi+ZgqGECERC5XIyYhA8AhgKHpGRefUHWis85keyo+l7\r\nQfe/xVkxjZvWHRDHSm+Aq73CuI1VyNrUZOf4749NhmGl+JMEZjETF8RaJyA4\r\ndr5meS4h03hIu8HwsO2MQ70ZTmiyMDSbtO2Bx5EgqniAR4VDQFlSYYDeTLFz\r\nyTiAVeseNFZDFEtJ2pOp2p6BhUQk8jvXHRnBZXX17J2PMe6ck54+dsquigTQ\r\nPVc+cFvWXKeNzZAijdHizzo+ReNO1Xikhw2WAyVPKuW4R2Zw33cso+dTvnCY\r\nfREpyYLgsLf3JliIN7JA3+QZPMF5xvRBBW874AeR/YwM/IGkELJavt/S27s9\r\nD+VuWELUZB5ZuyUxT5mTy+vn7H0tol9RNnfHhvsDAjgwhQE5hs2L+mlacA58\r\nkhxh1gNHp0fQVqx3NWfJw0J8qnTK2aaoMTojtMVx9L3X6FeyID7STWKpH6jZ\r\nTqbZ7GpYuq/AVOToOrG5uYFwK3fcicasE/IpSpn24FDtLy4f1j/sJtif9Vfa\r\n/J4BufiRtekNOxOz0vTjRMcwPv/tEzEUaM7k+y7qOvOR77eScIqng2ko3v4C\r\neKyXV7I9qswf4+/u4kcQve2rbQRvUqjuzFlb8d5sd2uETXSCyKnMGdOqPcLg\r\nWQzktqsVih1k2aaXe3R2VDFXafIhcIqbzsQ=\r\n=3Em3\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","types":"lib/index.d.ts","readme":"## Javascript library to monitor Selective Forwarding Units (SFU)\n\n`@observertc/sfu-monitor-js` is a JavaScript library to monitor your SFU and integrate with ObserveRTC.\n\nTable of Contents:\n\n * [Quick Start](#quick-start)\n * [Integrations](#integrations)\n    - [Mediasoup](#mediasoup)\n * [Configurations](#configurations)\n * [NPM package](#npm-package)\n * [API docs](#api-docs)\n * [Schemas](#schemas)\n * [Getting Involved](#getting-involved)\n * [License](#license)\n\n## Quick Start\n\nInstall the library by using NPM:\n\n```\nnpm i @observertc/sfu-monitor-js\n```\n\nOnce the library is installed, you need to integrate it.\nThe first step is to set up a monitor in your application.\n\n```javascript\nimport * as ObserveRTC from '@observertc/sfu-monitor-js';\n\n// Quick start to create a monitor and log the collected stats\nconst monitor = ObserveRTC.createSfuMonitor({\n  collectingPeriodInMs: 2000,\n  samplingPeriodInMs: 4000,\n});\n\nmonitor.on('sample-created', ({ sfuSample }) => {\n  console.log('The created sample', sfuSample);\n});\n```\n\nA monitor does the following:\n\n1. Collect Stats\n2. Make sample based on the collected stats\n\n### Integrate Mediasoup\n\nTo integrate [mediasoup:3^](https://mediasoup.org/documentation/v3/) you can use the built-in MediasoupCollector.\n\n```javascript\nimport * as mediasoup from 'mediasoup';\n\nconst sfuMonitor = createSfuMonitor({\n  collectingPeriodInMs: 5000,\n});\n\nconst mediasoupCollector = sfuMonitor.createMediasoupCollector({\n  mediasoup,\n});\n\n\n```\n\nWith this configuration, the monitor automatically adds and removes mediasoup objects. \n\n```javascript\nmonitor.on('stats-collected', () => {\n    const storage = monitor.storage\n    console.log(`Mediasoup SFU has ${storage.getNumberOfInboundRtpPads()} incoming RTP stream`);\n    console.log(`Mediasoup SFU has ${storage.getNumberOfOutboundRtpPads()} outgoing RTP stream`);\n    console.log(`Mediasoup SFU has ${storage.getNumberOfTransports()} transports`);\n});\n```\n\nBy default, it does not call `getStats` as it turned out to be performance intensive in some cases.\nIf you want the collector to call the `getStats` on objects, you can change the configuration like:\n\n\n```javascript\nconst mediasoupCollector = sfuMonitor.createMediasoupCollector({\n    mediasoup,\n    mediasoupCollector: {\n        pollWebRtcTransportStats: (transportId) => true,\n        pollPlainRtpTransportStats: (transportId) => true,\n        pollPipeTransportStats: (transportId) => true,\n        pollDirectTransportStats: (transportId) => true,\n        pollProducerStats: (producerId) => true,\n        pollConsumerStats: (consumerId) => true,\n        pollDataProducerStats: (dataProducerId) => true,\n        pollDataConsumerStats: (dataProducerId) => true,\n    }\n});\n```\n\n### Integrate other type of SFUs\n\nTo have a custom integration, you could use `AuxCollector` as follows:\n\n```javascript\n\nconst collector = sfuMonitor.createAuxCollector();\n\ncollector.addTransportStatsSupplier(\"myUniqueGeneratedTransportId\", async () => {\n    const stats: SfuTransport = {\n\n    };\n    return stats;\n});\n// when you want to remove it:\ncollector.removeTransportStatsSupplier(transportId);\n\n// similarly:\ncollector.addInboundRtpPadStatsSupplier(\"padId\", ...);\ncollector.removeInboundRtpPadStatsSupplier(\"padId\");\n\ncollector.addOutboundRtpPadStatsSupplier(\"padId\", ...);\ncollector.removeOutboundRtpPadStatsSupplier(\"padId\");\n\ncollector.addSctpStreamStatsSupplier(\"channelId\", ...);\ncollector.removeSctpStreamSupplier(\"channelId\");\n```\n\n## Configurations\n\n```javascript\nconst config = {\n    /**\n  * The identifier of the SFU.\n  *\n  * DEFAULT: a generated unique value\n  */\n  sfuId: 'my-sfu-id',\n\n  /**\n  * Sets the default logging level for sfu-monitor-js\n  * \n  * DEFAULT: warn\n  */\n  logLevel: LogLevel,\n\n  /**\n  * Sets the maximum number of listeners for event emitters\n  */\n  maxListeners: 1000,\n  \n  /**\n  * Set the ticking time of the timer invokes processes for collecting, sampling, and sending.\n  * \n  * DEFAULT: 1000\n  */\n  tickingTimeInMs: 1000,\n\n  /**\n  * By setting it, the observer calls the added statsCollectors periodically\n  * and pulls the stats.\n  *\n  * DEFAULT: undefined\n  */\n  collectingPeriodInMs: 1000,\n  /**\n  * By setting it, the observer make samples periodically.\n  *\n  * DEFAULT: undefined\n  */\n  samplingPeriodInMs: 1000,\n\n  /**\n  * By setting it, the observer sends the samples periodically.\n  *\n  * DEFAULT: undefined\n  */\n  sendingPeriodInMs: 1000,\n\n  /**\n  * Limits the number of stats polled at once from the collectors. \n  * \n  * DEFAULT: 50\n  */\n  pollingBatchSize: 50,\n\n  /**\n  * Pacing time between polling batches of stats\n  * \n  * DEFAULT: undefined\n  */\n  pollingBatchPaceTimeInMs: 50,\n\n  /**\n  * Flag indicating if the monitor creates sfu events.\n  * If true, events happening on the collected sources create sfu events such as SFU_TRANSPORT_OPENED, SFU_TRANSPORT_CLOSED.\n  * \n  * If this flag is false, the application is responsible for adding sfu events by calling the appropriate SfuMonitor method for the corresponding event.\n  * \n  * DEFAULT: false\n  */\n  createSfuEvents: true,\n\n  /**\n  * Configuration for the samples accumulator to balance the transfer the size of the Samples \n  * prepared to be sent to the server\n  * \n  */\n  accumulator: {\n    /**\n     * Sets the maximum number of client sample allowed to be in one Sample\n     * \n     * DEFAULT: 100\n     */\n    maxClientSamples: 100,\n\n    /**\n     * Sets the maximum number of Samples the accumulator can hold\n     * \n     * DEFAULT: 10\n     */\n    maxSamples: 10,\n\n    /**\n     * Forward a Sample to the server even if it is empty\n     * \n     * DEFAULT: false\n     */\n    forwardIfEmpty: false\n  }\n};\n```\n\n## API docs\n\nhttps://observertc.org/docs/api/sfu-monitor-js-v2/\n\n\n## NPM package\n\nhttps://www.npmjs.com/package/@observertc/sfu-monitor-js\n\n## Schemas\n\nhttps://github.com/observertc/schemas\n\n## Getting Involved\n\nSfu-monitor is designed to provide an open-source monitoring solution for WebRTC developers. We develop new features and maintain the current product with the help of the community. If you are interested in getting involved, please read our [contribution](CONTRIBUTING.md) guidelines.\n\n### Generate docs:\n```\ntypedoc --out docs ./src\n```\n\n## License\n\nApache-2.0\n","engines":{"node":">=10"},"gitHead":"4c0288db69feaa26619a6619befb73e89ea2009d","scripts":{"lint":"eslint -c .eslintrc.js src/*","test":"jest --config jest.config.js --runInBand","build":"tsc","prepare":"npm run build","prepublish":"pkgfiles","preversion":"npm run lint","prepublishOnly":"npm test && npm run lint"},"_npmUser":{"name":"balazskreith","email":"balazs.kreith@gmail.com"},"repository":{"url":"git+https://github.com/observertc/sfu-monitor-js.git","type":"git"},"_npmVersion":"6.14.18","description":"ObserveRTC SFU Integration Core Library","directories":{},"_nodeVersion":"14.21.3","dependencies":{"uuid":"^8.3.2","@types/ws":"^8.5.3","@types/uuid":"^8.3.4","@types/events":"^3.0.0","@observertc/sample-schemas-js":"2.2.1-rc.0"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.5.0","eslint":"^8.12.0","ts-jest":"^27.1.4","typedoc":"^0.24.1","pkgfiles":"2.3.0","bufferutil":"^4.0.6","typescript":"^4.6.3","@types/jest":"^27.4.0","utf-8-validate":"^5.0.9","@typescript-eslint/parser":"^5.18.0","@typescript-eslint/eslint-plugin":"^5.18.0"},"_npmOperationalInternal":{"tmp":"tmp/sfu-monitor-js_2.0.1-4c0288d.0_1681541805598_0.3466901893633527","host":"s3://npm-registry-packages"},"deprecated":"Package no longer supported. Contact Support at https://www.npmjs.com/support for more info."},"2.0.0":{"name":"@observertc/sfu-monitor-js","version":"2.0.0","keywords":["webrtc","getStats","observertc","sfu","integration"],"author":{"name":"Balazs Kreith"},"license":"Apache-2.0","_id":"@observertc/sfu-monitor-js@2.0.0","maintainers":[{"name":"pallab.gain","email":"pallab.gain@gmail.com"},{"name":"balazskreith","email":"balazs.kreith@gmail.com"}],"homepage":"https://github.com/observertc/sfu-monitor-js#readme","bugs":{"url":"https://github.com/observertc/sfu-monitor-js/issues"},"dist":{"shasum":"13b0d32f1cc8f451f2097204cb66a3abd1fd9bff","tarball":"https://registry.npmjs.org/@observertc/sfu-monitor-js/-/sfu-monitor-js-2.0.0.tgz","fileCount":111,"integrity":"sha512-6pK3WYSVbD96lvwCvoEgiDmF4gGYRJBC/Icx5PatW37d9qjG88ilXOH+xE/KYdUnR0BuGh99z1NOTIGrmFz2Kw==","signatures":[{"sig":"MEUCIBMB2Vvy7ajaiz0q0ouTawFbQcSuMdQYKQRU4r5O198KAiEAgBxxw55Vaolw8Mdqtzdh6nAL4CVoRajHXLCEW3zEI64=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":280663,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJkOkveACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmqOQQ/+IYSw4BdNzQ8afoTgjLBO73hjKoAAp51zlg5P0gfxRlYEbMHL\r\n9kNPZQ89S/jPmqr7hbSzY9YHNuGkhVuK4KcWVz9ruEeJghZmBJA6cp8Hws2R\r\niC4e2R8HXyOECFsaC+WDx1TSn/uaswge3jwTodP5it0UYSUS0lHUxznpOmv7\r\noTXv6yu1wxr/WkkLbHJcsZ3shA/1sn+mEg1KGtSiIKb3kfVw++PlDEz/Dv/x\r\nCg8wwf5Xw03lzu8f2CWOJPUsRNJJDLdHd/aXnGNKo4lN+JvlBdg/N9/TsGb/\r\n6YBuhFYXx0rBsb79LJFur40UkYUHzGzIzzRzmOQVBMVEdNKo8zdbIyqzFpxb\r\nDJXQo0NZjS5sl3rh+xgsoeMmYfnZ+je+LfvOO8PkFU5b/2AaDiOUt53uDEAj\r\nnlEPBZbQYreF4hs5d5F3g243v/0i917NGi1LbCSLXr52G7n17C3jOl1sqYQK\r\n1emKbNL2KalyjPAHTjX8RA+OByp1sbA1km2UBpr+fe53Sw/sOWFV/4diYSpT\r\nRTbPxzHamrKbdXia4jF/kRz7yY7aPagwGrjGnjMlYQ7kyFl2cpM8mHdGOhju\r\nAKdD+bTz7IXfES24hxtQ2cPLGe++A+/GLtHlLtom13207Gjx4Yd1h5OSdhzn\r\nD3rUj4y3Y/MaEPUzzpMootscy9MPggJoey8=\r\n=97qR\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","types":"lib/index.d.ts","engines":{"node":">=10"},"gitHead":"6295c6bb4a4b33cca3b5d57fd5e8ec13b65725f3","scripts":{"lint":"eslint -c .eslintrc.js src/*","test":"jest --config jest.config.js --runInBand","build":"tsc","prepare":"npm run build","prepublish":"pkgfiles","preversion":"npm run lint","prepublishOnly":"npm test && npm run lint"},"_npmUser":{"name":"balazskreith","email":"balazs.kreith@gmail.com"},"repository":{"url":"git+https://github.com/observertc/sfu-monitor-js.git","type":"git"},"_npmVersion":"6.14.18","description":"ObserveRTC SFU Integration Core Library","directories":{},"_nodeVersion":"14.21.3","dependencies":{"uuid":"^8.3.2","@types/ws":"^8.5.3","@types/uuid":"^8.3.4","@types/events":"^3.0.0","@observertc/sample-schemas-js":"2.2.1-rc.0"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.5.0","eslint":"^8.12.0","ts-jest":"^27.1.4","typedoc":"^0.24.1","pkgfiles":"2.3.0","bufferutil":"^4.0.6","typescript":"^4.6.3","@types/jest":"^27.4.0","utf-8-validate":"^5.0.9","@typescript-eslint/parser":"^5.18.0","@typescript-eslint/eslint-plugin":"^5.18.0"},"_npmOperationalInternal":{"tmp":"tmp/sfu-monitor-js_2.0.0_1681542110696_0.3384939837288665","host":"s3://npm-registry-packages"},"deprecated":"Package no longer supported. Contact Support at https://www.npmjs.com/support for more info."},"2.0.1":{"name":"@observertc/sfu-monitor-js","version":"2.0.1","keywords":["webrtc","getStats","observertc","sfu","integration"],"author":{"name":"Balazs Kreith"},"license":"Apache-2.0","_id":"@observertc/sfu-monitor-js@2.0.1","maintainers":[{"name":"pallab.gain","email":"pallab.gain@gmail.com"},{"name":"balazskreith","email":"balazs.kreith@gmail.com"}],"homepage":"https://github.com/observertc/sfu-monitor-js#readme","bugs":{"url":"https://github.com/observertc/sfu-monitor-js/issues"},"dist":{"shasum":"b7716da474291d0df16ebbec87bf198c0ee46921","tarball":"https://registry.npmjs.org/@observertc/sfu-monitor-js/-/sfu-monitor-js-2.0.1.tgz","fileCount":111,"integrity":"sha512-5ZrsWnmcfI1Xo97JJVyLwUmRuOpnqCsWo1PIbaqabWqUdHnn0epNTZ4qCTi/8H2YqIwQFGrdsFXSXpVJvHLzoQ==","signatures":[{"sig":"MEUCIQDFLLyms33zslnZKXbzx8Wd+qXT+ixCJzzk913ix3j80gIgYbi5X5xwXOyWEbuuw+wgyyndyKLTJACGLjFNvhSb70M=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":284960,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJkPEp3ACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmqJDw/9E5nIw4req/3G+GAQtqvCgXk+kFOzJHIbs8lPJY24rEf891aM\r\n1UU4n56n+o6fG+uCBbJs7H/MM+Sr8TeiAxDIusO+voOMMnPS8nU8n/bDqgBg\r\nfeOg07zu5ru3fpKgZzvYMMMksc2R+vLh8rN/eNySLgNUkZPtARIKCUf/jM45\r\n8AwksHdRafFoOYl7HsDxUMxOe3jeFgX0wduQLgcSRV/6HxCZQM2SnCKIWUeO\r\ndVlc4+A4x8KhQsEGHRh4sjAaYmj3EeIEJ7HPyLSITMq4bknNBXdce0FTm4tz\r\n8pEqBnBUYSHfuBcgi5DGj7BP6pi/DX2HzZenviBKEgV7PprmLR8UgJwPUTYk\r\nwc+6kzKP2MKQ4vy9kCqdFvlvqJcMZJHSR3EUnsZafyH+zbwDcyH8Y7QIUCGR\r\nOgAaWbuVdZKTY/3Axkr/dYKEFt1LYAN5QFQbdPllor2FyayxG2Pl0Wcle5Si\r\nEC5IHiK+9KR92PcjIEG2NpdvFUofYWIJd/9Xc1NEz6JURnYX6OqNWh/twEQ7\r\n0Bib6Xgbmq+2proB/gUXWVmMQh5I/aMtOif5pcV8hLbjOn3I112czjXXHQsA\r\niuEL2DIi7s4x/aQmQJBWXHu9hHVbVN9IOlZRzGynawtGI7eufi/JYkTXpIDi\r\n06qI8RPYjhwi/X/78qUB6lChSpP+ZhcYDbY=\r\n=SNsu\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","types":"lib/index.d.ts","engines":{"node":">=10"},"gitHead":"1a6e3c3ed518c8a4e677143df5a52c2de7626859","scripts":{"lint":"eslint -c .eslintrc.js src/*","test":"jest --config jest.config.js --runInBand","build":"tsc","prepare":"npm run build","prepublish":"pkgfiles","preversion":"npm run lint","prepublishOnly":"npm test && npm run lint"},"_npmUser":{"name":"balazskreith","email":"balazs.kreith@gmail.com"},"repository":{"url":"git+https://github.com/observertc/sfu-monitor-js.git","type":"git"},"_npmVersion":"6.14.18","description":"ObserveRTC SFU Integration Core Library","directories":{},"_nodeVersion":"14.21.3","dependencies":{"uuid":"^8.3.2","@types/ws":"^8.5.3","@types/uuid":"^8.3.4","@types/events":"^3.0.0","@observertc/sample-schemas-js":"2.2.1-rc.0"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.5.0","eslint":"^8.12.0","ts-jest":"^27.1.4","typedoc":"^0.24.1","pkgfiles":"2.3.0","bufferutil":"^4.0.6","typescript":"^4.6.3","@types/jest":"^27.4.0","utf-8-validate":"^5.0.9","@typescript-eslint/parser":"^5.18.0","@typescript-eslint/eslint-plugin":"^5.18.0"},"_npmOperationalInternal":{"tmp":"tmp/sfu-monitor-js_2.0.1_1681672823437_0.38872536563184856","host":"s3://npm-registry-packages"},"deprecated":"Package no longer supported. Contact Support at https://www.npmjs.com/support for more info."},"2.0.2":{"name":"@observertc/sfu-monitor-js","version":"2.0.2","keywords":["webrtc","getStats","observertc","sfu","integration"],"author":{"name":"Balazs Kreith"},"license":"Apache-2.0","_id":"@observertc/sfu-monitor-js@2.0.2","maintainers":[{"name":"pallab.gain","email":"pallab.gain@gmail.com"},{"name":"balazskreith","email":"balazs.kreith@gmail.com"}],"homepage":"https://github.com/observertc/sfu-monitor-js#readme","bugs":{"url":"https://github.com/observertc/sfu-monitor-js/issues"},"dist":{"shasum":"9e976f5f19dc695ead9e6e70ae28549911afd6d9","tarball":"https://registry.npmjs.org/@observertc/sfu-monitor-js/-/sfu-monitor-js-2.0.2.tgz","fileCount":111,"integrity":"sha512-KYCipstRSJt7nQyklYCsdl2oCiyCYc/dUwj5lWW7EeIgM0MXoN53N2PoTeszAxG582rwmgPjeboKqi6agbDzJw==","signatures":[{"sig":"MEYCIQClqHcxcQejviybQzXWL3t+6AS2nS1czd4R3cdA7i+38AIhAKcK13S7nHWXAEjmpJw1773vJWemZCI8Z/R5K7BuhTk6","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":287307,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJkPMbUACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmr0aQ/+M127AkcsRFJJBEYCXnfI6ur0RwJD4SwFSWpSwbY6tcgnZLGK\r\nLAGuWvrRQMxqf4pwE/AW4xDRCh9CgjM0sG93z2ah/FKD0DnIMfznnYYADEos\r\nNkFSMQNPxuRQjKFFRn4KRwAiAK0uhG5vgUsQgyVUlPyppvIA8Di/zn4gjygQ\r\nILSdiITeI8JXrMVZfZG8jrjlPmDPp2QofCp+UFMuw1S8a/YL8Mwhhv3bsp2D\r\nhxosH5yPRnK2viTd3BqzEEMIALQghAwvd0Jy2WtjFrpYtzlqmXpNZDOEKz89\r\n9UD6rZhK/cIx0anZA+dQ6bYLwsyAllV6F8GRwnOVd7MXkQYV/iB3QLxy2xR0\r\nHhwlRm/+dEWNuZ16wGFyLzvPjdTkJveAJ8v0CtT2V34ZDwmidfiurKq5yXQq\r\nvZn3QPQHOdOf5yPLLuSx86NW2HgaydR40PxS6s/OU8yEWQp+sDU2h4La3QS7\r\nKeZiylDHVw9XW1zswAUShOV31I++67EAZfZsy9GAmtG9eBjbLbhMAE2mIyJv\r\nrpj/AZa03QFDj00GJYePPlaCGfmdkLqtCsi/ZH8Z6Kbv1sMjLIOW8rZu6umA\r\nGQwE6WTfYc26kniCH/qGhXN+p7hwRtscjTtHL9a0qnvctj/05R95dsxjxP6w\r\nXXlqMOXwTi3vzJydynvCrsHR7bgkDQwmYvs=\r\n=1JxU\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","types":"lib/index.d.ts","engines":{"node":">=10"},"gitHead":"567fa1e39766bff0b4897c73ea5aa62e3415f572","scripts":{"lint":"eslint -c .eslintrc.js src/*","test":"jest --config jest.config.js --runInBand","build":"tsc","prepare":"npm run build","prepublish":"pkgfiles","preversion":"npm run lint","prepublishOnly":"npm test && npm run lint"},"_npmUser":{"name":"balazskreith","email":"balazs.kreith@gmail.com"},"repository":{"url":"git+https://github.com/observertc/sfu-monitor-js.git","type":"git"},"_npmVersion":"6.14.18","description":"ObserveRTC SFU Integration Core Library","directories":{},"_nodeVersion":"14.21.3","dependencies":{"uuid":"^8.3.2","@types/ws":"^8.5.3","@types/uuid":"^8.3.4","@types/events":"^3.0.0","@observertc/sample-schemas-js":"2.2.1-rc.0"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.5.0","eslint":"^8.12.0","ts-jest":"^27.1.4","typedoc":"^0.24.1","pkgfiles":"2.3.0","bufferutil":"^4.0.6","typescript":"^4.6.3","@types/jest":"^27.4.0","utf-8-validate":"^5.0.9","@typescript-eslint/parser":"^5.18.0","@typescript-eslint/eslint-plugin":"^5.18.0"},"_npmOperationalInternal":{"tmp":"tmp/sfu-monitor-js_2.0.2_1681704660207_0.7207698476065076","host":"s3://npm-registry-packages"},"deprecated":"Package no longer supported. Contact Support at https://www.npmjs.com/support for more info."},"2.0.3":{"name":"@observertc/sfu-monitor-js","version":"2.0.3","keywords":["webrtc","getStats","observertc","sfu","integration"],"author":{"name":"Balazs Kreith"},"license":"Apache-2.0","_id":"@observertc/sfu-monitor-js@2.0.3","maintainers":[{"name":"pallab.gain","email":"pallab.gain@gmail.com"},{"name":"balazskreith","email":"balazs.kreith@gmail.com"}],"homepage":"https://github.com/observertc/sfu-monitor-js#readme","bugs":{"url":"https://github.com/observertc/sfu-monitor-js/issues"},"dist":{"shasum":"3719cb2d60bced2dccbffc49829c1bf3b182af9c","tarball":"https://registry.npmjs.org/@observertc/sfu-monitor-js/-/sfu-monitor-js-2.0.3.tgz","fileCount":111,"integrity":"sha512-TFbLdgE8v5opo6KeueylakMqDXMhl7AuqBaUwcCGB5cMboA9ISl9BBC8hc7Yk3OaNDPlsFtnDmr11Npi2IJb6w==","signatures":[{"sig":"MEUCIBROToOgb1DcI4JYqy+vD/AxjH5yfNv5z8GSAjITGcnAAiEA+aE1Wk4sup+vbjSaeRxdjcG4Y2Asg76sp8fV6innvyg=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":297700},"main":"lib/index.js","types":"lib/index.d.ts","engines":{"node":">=10"},"gitHead":"6f1758976a89d4f31329a7f9caacec77b949ebeb","scripts":{"lint":"eslint -c .eslintrc.js src/*","test":"jest --config jest.config.js --runInBand","build":"tsc","prepare":"npm run build","prepublish":"pkgfiles","preversion":"npm run lint","prepublishOnly":"npm test && npm run lint"},"_npmUser":{"name":"balazskreith","email":"balazs.kreith@gmail.com"},"repository":{"url":"git+https://github.com/observertc/sfu-monitor-js.git","type":"git"},"_npmVersion":"6.14.18","description":"ObserveRTC SFU Integration Core Library","directories":{},"_nodeVersion":"14.21.3","dependencies":{"uuid":"^8.3.2","@types/ws":"^8.5.3","@types/uuid":"^8.3.4","@types/events":"^3.0.0","@observertc/sample-schemas-js":"2.2.1-rc.0"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.5.0","eslint":"^8.12.0","ts-jest":"^27.1.4","typedoc":"^0.24.1","pkgfiles":"2.3.0","bufferutil":"^4.0.6","typescript":"^4.6.3","@types/jest":"^27.4.0","utf-8-validate":"^5.0.9","@typescript-eslint/parser":"^5.18.0","@typescript-eslint/eslint-plugin":"^5.18.0"},"_npmOperationalInternal":{"tmp":"tmp/sfu-monitor-js_2.0.3_1687360664067_0.3948887281358624","host":"s3://npm-registry-packages"},"deprecated":"Package no longer supported. Contact Support at https://www.npmjs.com/support for more info."}},"time":{"created":"2022-04-09T12:40:38.394Z","modified":"2026-08-09T10:33:22.215Z","1.0.0-beta.20":"2022-04-09T12:40:38.667Z","1.0.0-beta.22":"2022-04-10T14:55:47.356Z","1.0.0-beta.23":"2022-04-10T15:27:19.311Z","1.0.0-beta.24":"2022-04-10T15:32:40.240Z","1.0.0-beta.25":"2022-04-10T15:49:41.930Z","1.0.0-beta.26":"2022-04-10T17:23:32.748Z","1.0.0-beta.27":"2022-04-11T04:13:15.492Z","1.0.0-beta.28":"2022-04-14T11:55:48.902Z","1.0.0-beta.29":"2022-04-19T10:56:20.416Z","1.0.0-beta.30":"2022-04-20T15:43:58.809Z","1.0.0-beta.31":"2022-04-25T03:44:17.551Z","1.0.0-beta.32":"2022-04-26T12:16:17.352Z","1.0.0-beta.33":"2022-04-26T12:27:13.514Z","1.0.0-beta.34":"2022-05-09T04:03:31.420Z","1.0.0":"2022-10-06T10:16:50.612Z","1.0.0-SNAPSHOT.c13eb781ee226d4904c49df315722b4a332b8681":"2022-11-07T08:53:04.913Z","1.1.0-SNAPSHOT.9d0a328efdbeed0c4b1210c16eb760b8176411c1":"2022-11-07T08:55:09.883Z","1.1.0-SNAPSHOT.37061208e126f0b434e178df6e6ce78ba4ced0ba":"2022-11-07T09:22:37.918Z","1.1.0-SNAPSHOT.912297b4acedb72edd0d71a5a0c070e77463d5be":"2022-11-07T10:55:20.169Z","1.1.0-SNAPSHOT.f61135a086092a1b418ffc2c55e376690a107c17":"2022-11-07T11:42:26.902Z","1.1.0-SNAPSHOT.b342b9e54b6f87291cc6f53e0396872375c5a24e":"2022-11-07T11:45:38.607Z","1.1.0-SNAPSHOT.52f76d15b7c951c8ea81c0e1396afdc6142bb0cf":"2022-11-07T12:12:39.518Z","1.1.0-SNAPSHOT.82219d71b2c08124c344bad8c3ec0577e7bfff3d":"2022-11-07T12:38:17.395Z","1.1.0-SNAPSHOT.bfaa4d8e2da170d992fe1ea4920d4e659e0226b1":"2022-11-07T12:50:29.845Z","1.1.0-SNAPSHOT.8d0c3acceae446ee456a7ab8fdf38e00bf6aba39":"2022-11-19T09:56:16.743Z","1.1.0-SNAPSHOT.e43a5db70e915b5a1f6028cb5c0930ad740d4a07":"2022-11-19T16:51:24.724Z","1.1.0-SNAPSHOT.63b9b161019e516659a14c41929e2446984ef955":"2022-11-20T17:07:12.028Z","1.1.0-SNAPSHOT.6cc2393dac024914f3302cab1b427bb461c9a190":"2022-11-24T13:21:35.816Z","1.1.0-SNAPSHOT.37133f95530ddfb6c3723dd4a958f1bb6a9cd665":"2022-11-24T13:41:14.348Z","1.1.0-SNAPSHOT.c9b9cf7c3948c062b36d9f97ca9bf3ebe5b82f83":"2022-11-24T14:09:35.415Z","1.1.0-SNAPSHOT.d95dc96e845e7e086613bc9a03c1221f4a19afbd":"2022-11-29T20:40:12.591Z","1.1.0-SNAPSHOT.63838b178d29ea166729d46f6b9fc198fabc63f9":"2022-11-29T21:17:58.512Z","1.1.0-SNAPSHOT.b290be384db22c93c76c037a47a41a5c1b482584":"2022-11-30T06:51:24.395Z","1.1.0-SNAPSHOT.e0b00f50a9ef9b01d38c584e0eb4dfadd0b91369":"2022-11-30T08:59:41.810Z","1.1.0":"2022-11-30T09:01:31.642Z","1.1.0-SNAPSHOT.3610a23b3e25b31493144c02ded21ce59a6a871b":"2022-12-28T07:34:42.542Z","1.1.0-SNAPSHOT.a920780482643c59acfa7bcb50549089a098b237":"2022-12-28T08:02:06.445Z","1.1.0-SNAPSHOT.6b7100257ac4bf507f5ffcc21b273a3b6b989a99":"2022-12-28T08:54:46.080Z","1.1.1-SNAPSHOT.cd9ba0673a3bf143f62a307c6ad88526636a0dd2":"2022-12-28T08:56:19.120Z","1.1.1":"2022-12-28T08:58:55.811Z","2.0.1-46de52e.0":"2023-04-14T14:57:41.439Z","2.0.1-5bf369d.0":"2023-04-15T04:37:05.536Z","2.0.1-23f7632.0":"2023-04-15T06:34:59.461Z","2.0.1-4c0288d.0":"2023-04-15T06:56:45.802Z","2.0.0":"2023-04-15T07:01:50.904Z","2.0.1":"2023-04-16T19:20:23.667Z","2.0.2":"2023-04-17T04:11:00.399Z","2.0.3":"2023-06-21T15:17:44.260Z"},"bugs":{"url":"https://github.com/observertc/sfu-monitor-js/issues"},"author":{"name":"Balazs Kreith"},"license":"Apache-2.0","homepage":"https://github.com/observertc/sfu-monitor-js#readme","keywords":["webrtc","getStats","observertc","sfu","integration"],"repository":{"url":"git+https://github.com/observertc/sfu-monitor-js.git","type":"git"},"description":"ObserveRTC SFU Integration Core Library","maintainers":[{"name":"balazskreith","email":"balazs.kreith@gmail.com"},{"name":"pallab.gain","email":"pallab.gain@gmail.com"}],"readme":"## Javascript library to monitor Selective Forwarding Units (SFU)\n\n`@observertc/sfu-monitor-js` is a JavaScript library to monitor your SFU and integrate with ObserveRTC.\n\nTable of Contents:\n\n * [Quick Start](#quick-start)\n * [Integrations](#integrations)\n    - [Mediasoup](#mediasoup)\n * [Configurations](#configurations)\n * [NPM package](#npm-package)\n * [API docs](#api-docs)\n * [Schemas](#schemas)\n * [Getting Involved](#getting-involved)\n * [License](#license)\n\n## Quick Start\n\nInstall the library by using NPM:\n\n```\nnpm i @observertc/sfu-monitor-js\n```\n\nOnce the library is installed, you need to integrate it.\nThe first step is to set up a monitor in your application.\n\n```javascript\nimport * as ObserveRTC from '@observertc/sfu-monitor-js';\n\n// Quick start to create a monitor and log the collected stats\nconst monitor = ObserveRTC.createSfuMonitor({\n  collectingPeriodInMs: 2000,\n  samplingPeriodInMs: 4000,\n});\n\nmonitor.on('sample-created', ({ sfuSample }) => {\n  console.log('The created sample', sfuSample);\n});\n```\n\nA monitor does the following:\n\n1. Collect Stats\n2. Make sample based on the collected stats\n\n### Integrate Mediasoup\n\nTo integrate [mediasoup:3^](https://mediasoup.org/documentation/v3/) you can use the built-in MediasoupCollector.\n\n```javascript\nimport * as mediasoup from 'mediasoup';\n\nconst sfuMonitor = createSfuMonitor({\n  collectingPeriodInMs: 5000,\n});\n\nconst mediasoupCollector = sfuMonitor.createMediasoupCollector({\n  mediasoup,\n});\n\n\n```\n\nWith this configuration, the monitor automatically adds and removes mediasoup objects. \n\n```javascript\nmonitor.on('stats-collected', () => {\n    const storage = monitor.storage\n    console.log(`Mediasoup SFU has ${storage.getNumberOfInboundRtpPads()} incoming RTP stream`);\n    console.log(`Mediasoup SFU has ${storage.getNumberOfOutboundRtpPads()} outgoing RTP stream`);\n    console.log(`Mediasoup SFU has ${storage.getNumberOfTransports()} transports`);\n});\n```\n\nBy default, it does not call `getStats` as it turned out to be performance intensive in some cases.\nIf you want the collector to call the `getStats` on objects, you can change the configuration like:\n\n\n```javascript\nconst mediasoupCollector = sfuMonitor.createMediasoupCollector({\n    mediasoup,\n    mediasoupCollector: {\n        pollWebRtcTransportStats: (transportId) => true,\n        pollPlainRtpTransportStats: (transportId) => true,\n        pollPipeTransportStats: (transportId) => true,\n        pollDirectTransportStats: (transportId) => true,\n        pollProducerStats: (producerId) => true,\n        pollConsumerStats: (consumerId) => true,\n        pollDataProducerStats: (dataProducerId) => true,\n        pollDataConsumerStats: (dataProducerId) => true,\n    }\n});\n```\n\n### Integrate other type of SFUs\n\nTo have a custom integration, you could use `AuxCollector` as follows:\n\n```javascript\n\nconst collector = sfuMonitor.createAuxCollector();\n\ncollector.addTransportStatsSupplier(\"myUniqueGeneratedTransportId\", async () => {\n    const stats: SfuTransport = {\n\n    };\n    return stats;\n});\n// when you want to remove it:\ncollector.removeTransportStatsSupplier(transportId);\n\n// similarly:\ncollector.addInboundRtpPadStatsSupplier(\"padId\", ...);\ncollector.removeInboundRtpPadStatsSupplier(\"padId\");\n\ncollector.addOutboundRtpPadStatsSupplier(\"padId\", ...);\ncollector.removeOutboundRtpPadStatsSupplier(\"padId\");\n\ncollector.addSctpStreamStatsSupplier(\"channelId\", ...);\ncollector.removeSctpStreamSupplier(\"channelId\");\n```\n\n## Configurations\n\n```javascript\nconst config = {\n    /**\n  * The identifier of the SFU.\n  *\n  * DEFAULT: a generated unique value\n  */\n  sfuId: 'my-sfu-id',\n\n  /**\n  * Sets the default logging level for sfu-monitor-js\n  * \n  * DEFAULT: warn\n  */\n  logLevel: LogLevel,\n\n  /**\n  * Sets the maximum number of listeners for event emitters\n  */\n  maxListeners: 1000,\n  \n  /**\n  * Set the ticking time of the timer invokes processes for collecting, sampling, and sending.\n  * \n  * DEFAULT: 1000\n  */\n  tickingTimeInMs: 1000,\n\n  /**\n  * By setting it, the observer calls the added statsCollectors periodically\n  * and pulls the stats.\n  *\n  * DEFAULT: undefined\n  */\n  collectingPeriodInMs: 1000,\n  /**\n  * By setting it, the observer make samples periodically.\n  *\n  * DEFAULT: undefined\n  */\n  samplingPeriodInMs: 1000,\n\n  /**\n  * By setting it, the observer sends the samples periodically.\n  *\n  * DEFAULT: undefined\n  */\n  sendingPeriodInMs: 1000,\n\n  /**\n  * Limits the number of stats polled at once from the collectors. \n  * \n  * DEFAULT: 50\n  */\n  pollingBatchSize: 50,\n\n  /**\n  * Pacing time between polling batches of stats\n  * \n  * DEFAULT: undefined\n  */\n  pollingBatchPaceTimeInMs: 50,\n\n  /**\n  * Flag indicating if the monitor creates sfu events.\n  * If true, events happening on the collected sources create sfu events such as SFU_TRANSPORT_OPENED, SFU_TRANSPORT_CLOSED.\n  * \n  * If this flag is false, the application is responsible for adding sfu events by calling the appropriate SfuMonitor method for the corresponding event.\n  * \n  * DEFAULT: false\n  */\n  createSfuEvents: true,\n\n  /**\n  * Configuration for the samples accumulator to balance the transfer the size of the Samples \n  * prepared to be sent to the server\n  * \n  */\n  accumulator: {\n    /**\n     * Sets the maximum number of client sample allowed to be in one Sample\n     * \n     * DEFAULT: 100\n     */\n    maxClientSamples: 100,\n\n    /**\n     * Sets the maximum number of Samples the accumulator can hold\n     * \n     * DEFAULT: 10\n     */\n    maxSamples: 10,\n\n    /**\n     * Forward a Sample to the server even if it is empty\n     * \n     * DEFAULT: false\n     */\n    forwardIfEmpty: false\n  }\n};\n```\n\n## API docs\n\nhttps://observertc.org/docs/api/sfu-monitor-js-v2/\n\n\n## NPM package\n\nhttps://www.npmjs.com/package/@observertc/sfu-monitor-js\n\n## Schemas\n\nhttps://github.com/observertc/schemas\n\n## Getting Involved\n\nSfu-monitor is designed to provide an open-source monitoring solution for WebRTC developers. We develop new features and maintain the current product with the help of the community. If you are interested in getting involved, please read our [contribution](CONTRIBUTING.md) guidelines.\n\n### Generate docs:\n```\ntypedoc --out docs ./src\n```\n\n## License\n\nApache-2.0\n","readmeFilename":"README.md"}