- This project was bootstrapped with : [https://github.com/alexjoverm/typescript-library-starter.git]
- Underlying peer metric library: [https://github.com/peermetrics/webrtc-stats]
- Ubuntu
- MacOS
- Windows
The following pre-requisites should be setup through your terminal on your development machine. Please refer to tool installation guides by the developers to set these up.
- Git
- Node 16
The tests run on node environment instead of the real browser environment. Because of that, some browser variables like window, WebRTC API are not available in test environment. Therefore, we have to setup them in setup.jest.js
npm installnpm start- Make sure you have started the
webrtc-monitoring-backend - Visit [http://localhost:8080/?clientId=1234] to set the clientId and start a call
UI can be tested by passing url search params
mockStatus=truemocks troubleshooter and other teststroubleshooterMock=component=camera,status=runningsets the given status to the selected troubleshooter test, and sets 'success' status to all preceding tests.
e.g.: [http://localhost:8080/?mockStats=true&troubleshooterMock=component=camera,status=running]
Run npm run build
mockStatussearch param: see above Testing UI sectiontroubleshooterMocksearch param: see above Testing UI sectiontroubleshooterOnlyrun only selected troubleshooter tests: (defaultbrowser,audio,video,network)clientIdsets the clientId (by default automatically generated and saved in the browser)tokensets the JWT auth token for a. a user or, b. a plugin
See more: src/utils/urlUtils.ts
e.g.: [http://localhost:8080/?mockStats=true&clientId=1234&token=x.x.x]
-
insert webrtc-monitoring-common-lib to dependencies array
"@meetrix/lib-monitoring": "git+https://github.com/meetrix/lib-monitoring",
-
Import it into your source code
import Monitor from '@meetrix/lib-monitoring/dist/lib/lib-call-quality-monitoring';
- Decide on a version number https://semver.org/
- Update package.json and package-lock.json "version" field
- Add/merge this to master/main branch