No code ever runs in the first go. When things go wrong, debugging becomes an important aspect for a developer first SDK. We have designed our APIs and error messages with developer experience and ease of debugging in mind. We hope that you'll have a delightful experience walking through the features and integrating our sdk in your app.
In case of any issues, we print error or warning logs in console to help with faster debugging.
The log level can be configured to control sdk logging.
We take the debugging experience one step further by connecting our store to redux devtools extension by default. This gives you transparency and visibility into the whole room state while building your UI.
We highly recommend installing the devtools extension to visualize this state along with all the activities taking place in a single view. This makes it easier to understand when and how the UI should change. You can use the time travel feature of the redux devtools to recreate state changes for debugging specific issues as well.
We also give a ready to use UI without writing any code which can be accessed from the dashboard account. The code for this sample is open sourced here. You can either start with this codebase or write your own, and use it for testing your webapp in the initial phase of development.
Do check the detailed page for listening to and handling errors here.
If nothing else works, feel free to create an issue here or reach out to us on discord, there is a channel there for web-sdk-discussion. If you're reporting a bug, we would appreciate as many details possible. We might further ask you for the following information to debug the issues better -
Detailed steps to reproduce the issue. You can also give us a codesandbox where the issue can be seen, feel free to base off the code over one of our quickstart examples.
This would be the React Component or the JS Function in/around which the bug/issue happens.
You'll need to install the redux devtools extension for this. Once you open the devtools there would be a download option on bottom panel.