- 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 install
npm 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=true
mocks troubleshooter and other teststroubleshooterMock=component=camera,status=running
sets 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
mockStatus
search param: see above Testing UI sectiontroubleshooterMock
search param: see above Testing UI sectiontroubleshooterOnly
run only selected troubleshooter tests: (defaultbrowser,audio,video,network
)clientId
sets the clientId (by default automatically generated and saved in the browser)token
sets 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