- From: Harald Alvestrand <harald@alvestrand.no>
- Date: Thu, 24 Oct 2013 08:31:48 +0200
- To: public-webrtc@w3.org
- Message-ID: <5268BED4.6020901@alvestrand.no>
On 10/23/2013 08:33 PM, cowwoc wrote: > > I am getting increasingly annoyed with the state of WebRTC error > reporting. Granted, the problems mentioned below are specific to > Chrome but I get the feeling that Chrome hasn't devoted more attention > to this because the spec is in flux. > > Take a look at some of the error messages I ran into: > https://code.google.com/p/webrtc/issues/detail?id=2556 > > I think we already agreed on the following: > > 1. Callback must be passed an exception (not a string, as is > currently the case in Chrome). > Sorry, when did we agree on this? The spec (section 4.5.1 RTCPeerCOnnectionErrorCallback) currently says: callback RTCPeerConnectionErrorCallback = void (DOMError error); I've noted that we need to use RTCSdpError for setLocal/setRemote: interface RTCSdpError : DOMError { readonly attribute long sdpLineNumber; }; I don't see a well-defined concept of "stack trace" that would make sense in your statement 1. The exception stack-trace SHOULD include the caller of the WebRTC function. Currently it is truncated due to implementation details, starting inside the WebRTC function. Right now if I invoke setLocalDescription() from 10 locations in my code, WebRTC tells me that setLocalDescription() ran into a problem but I have no idea which of the 10 locations were at fault. This is easily solved without any API or implementation change. The well-known Javascript way to handle this is to pass the information in the callback: SetLocalDescription(desc, success, function(error) { whereiwascalledfrom = "call site 1"; commonErrorHandling(error, whereiwascalledfrom) }) The diagnostics are, as Adam said, an implementation matter.
Received on Thursday, 24 October 2013 06:32:08 UTC