Skip to content

Instantly share code, notes, and snippets.

@jonpincus
Created December 10, 2013 00:23
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save jonpincus/7883677 to your computer and use it in GitHub Desktop.
Save jonpincus/7883677 to your computer and use it in GitHub Desktop.
SimpleWebRTC Chrome/Firefox interop problems
Console from Chrome:
SimpleWebRTC event: connectionReady bcl0nBcPDk10-LZnnJ5b latest.js:1
Setup audio latest.js:1
SimpleWebRTC event: localStream
MediaStream {onremovetrack: null, onaddtrack: null, onended: null, ended: false, id: "x3ZOPDUME8fU9CfmValYMjJn68lWAgdSujxJ"…}
latest.js:1
SimpleWebRTC event: readyToCall bcl0nBcPDk10-LZnnJ5b latest.js:1
Failed to create reliable data channel. latest.js:1
Failed to create unreliable data channel. latest.js:1
SimpleWebRTC event: joinedRoom My room name latest.js:1
event.returnValue is deprecated. Please use the standard event.preventDefault() instead. VM86:988
SimpleWebRTC event: negotiationNeeded
Event {clipboardData: undefined, cancelBubble: false, returnValue: true, srcElement: RTCPeerConnection, defaultPrevented: false…}
latest.js:1
SimpleWebRTC event: negotiationNeeded
Event {clipboardData: undefined, cancelBubble: false, returnValue: true, srcElement: RTCPeerConnection, defaultPrevented: false…}
latest.js:1
SimpleWebRTC event: negotiationNeeded
Event {clipboardData: undefined, cancelBubble: false, returnValue: true, srcElement: RTCPeerConnection, defaultPrevented: false…}
latest.js:1
sending offer
Object {to: "fjqOFWYz4lm5VfUanJ5J", broadcaster: undefined, roomType: "video", type: "offer", payload: RTCSessionDescription…}
latest.js:1
SimpleWebRTC event: message
Object {to: "fjqOFWYz4lm5VfUanJ5J", broadcaster: undefined, roomType: "video", type: "offer", payload: RTCSessionDescription…}
latest.js:1
sending candidate
Object {to: "fjqOFWYz4lm5VfUanJ5J", broadcaster: undefined, roomType: "video", type: "candidate", payload: RTCIceCandidate…}
latest.js:1
SimpleWebRTC event: message
Object {to: "fjqOFWYz4lm5VfUanJ5J", broadcaster: undefined, roomType: "video", type: "candidate", payload: RTCIceCandidate…}
latest.js:1
sending candidate
Object {to: "fjqOFWYz4lm5VfUanJ5J", broadcaster: undefined, roomType: "video", type: "candidate", payload: RTCIceCandidate…}
latest.js:1
SimpleWebRTC event: message
Object {to: "fjqOFWYz4lm5VfUanJ5J", broadcaster: undefined, roomType: "video", type: "candidate", payload: RTCIceCandidate…}
latest.js:1
sending candidate
Object {to: "fjqOFWYz4lm5VfUanJ5J", broadcaster: undefined, roomType: "video", type: "candidate", payload: RTCIceCandidate…}
latest.js:1
SimpleWebRTC event: message
Object {to: "fjqOFWYz4lm5VfUanJ5J", broadcaster: undefined, roomType: "video", type: "candidate", payload: RTCIceCandidate…}
latest.js:1
sending candidate
Object {to: "fjqOFWYz4lm5VfUanJ5J", broadcaster: undefined, roomType: "video", type: "candidate", payload: RTCIceCandidate…}
latest.js:1
SimpleWebRTC event: message
Object {to: "fjqOFWYz4lm5VfUanJ5J", broadcaster: undefined, roomType: "video", type: "candidate", payload: RTCIceCandidate…}
latest.js:1
sending candidate
Object {to: "fjqOFWYz4lm5VfUanJ5J", broadcaster: undefined, roomType: "video", type: "candidate", payload: RTCIceCandidate…}
latest.js:1
SimpleWebRTC event: message
Object {to: "fjqOFWYz4lm5VfUanJ5J", broadcaster: undefined, roomType: "video", type: "candidate", payload: RTCIceCandidate…}
latest.js:1
sending candidate
Object {to: "fjqOFWYz4lm5VfUanJ5J", broadcaster: undefined, roomType: "video", type: "candidate", payload: RTCIceCandidate…}
latest.js:1
SimpleWebRTC event: message
Object {to: "fjqOFWYz4lm5VfUanJ5J", broadcaster: undefined, roomType: "video", type: "candidate", payload: RTCIceCandidate…}
latest.js:1
sending candidate
Object {to: "fjqOFWYz4lm5VfUanJ5J", broadcaster: undefined, roomType: "video", type: "candidate", payload: RTCIceCandidate…}
latest.js:1
SimpleWebRTC event: message
Object {to: "fjqOFWYz4lm5VfUanJ5J", broadcaster: undefined, roomType: "video", type: "candidate", payload: RTCIceCandidate…}
latest.js:1
sending candidate
Object {to: "fjqOFWYz4lm5VfUanJ5J", broadcaster: undefined, roomType: "video", type: "candidate", payload: RTCIceCandidate…}
latest.js:1
SimpleWebRTC event: message
Object {to: "fjqOFWYz4lm5VfUanJ5J", broadcaster: undefined, roomType: "video", type: "candidate", payload: RTCIceCandidate…}
latest.js:1
sending candidate
Object {to: "fjqOFWYz4lm5VfUanJ5J", broadcaster: undefined, roomType: "video", type: "candidate", payload: RTCIceCandidate…}
latest.js:1
SimpleWebRTC event: message
Object {to: "fjqOFWYz4lm5VfUanJ5J", broadcaster: undefined, roomType: "video", type: "candidate", payload: RTCIceCandidate…}
latest.js:1
sending candidate
Object {to: "fjqOFWYz4lm5VfUanJ5J", broadcaster: undefined, roomType: "video", type: "candidate", payload: RTCIceCandidate…}
latest.js:1
SimpleWebRTC event: message
Object {to: "fjqOFWYz4lm5VfUanJ5J", broadcaster: undefined, roomType: "video", type: "candidate", payload: RTCIceCandidate…}
latest.js:1
sending candidate
Object {to: "fjqOFWYz4lm5VfUanJ5J", broadcaster: undefined, roomType: "video", type: "candidate", payload: RTCIceCandidate…}
latest.js:1
SimpleWebRTC event: message
Object {to: "fjqOFWYz4lm5VfUanJ5J", broadcaster: undefined, roomType: "video", type: "candidate", payload: RTCIceCandidate…}
latest.js:1
sending candidate
Object {to: "fjqOFWYz4lm5VfUanJ5J", broadcaster: undefined, roomType: "video", type: "candidate", payload: RTCIceCandidate…}
latest.js:1
SimpleWebRTC event: message
Object {to: "fjqOFWYz4lm5VfUanJ5J", broadcaster: undefined, roomType: "video", type: "candidate", payload: RTCIceCandidate…}
latest.js:1
sending candidate
Object {to: "fjqOFWYz4lm5VfUanJ5J", broadcaster: undefined, roomType: "video", type: "candidate", payload: RTCIceCandidate…}
latest.js:1
SimpleWebRTC event: message
Object {to: "fjqOFWYz4lm5VfUanJ5J", broadcaster: undefined, roomType: "video", type: "candidate", payload: RTCIceCandidate…}
latest.js:1
sending candidate
Object {to: "fjqOFWYz4lm5VfUanJ5J", broadcaster: undefined, roomType: "video", type: "candidate", payload: RTCIceCandidate…}
latest.js:1
SimpleWebRTC event: message
Object {to: "fjqOFWYz4lm5VfUanJ5J", broadcaster: undefined, roomType: "video", type: "candidate", payload: RTCIceCandidate…}
latest.js:1
sending candidate
Object {to: "fjqOFWYz4lm5VfUanJ5J", broadcaster: undefined, roomType: "video", type: "candidate", payload: RTCIceCandidate…}
latest.js:1
SimpleWebRTC event: message
Object {to: "fjqOFWYz4lm5VfUanJ5J", broadcaster: undefined, roomType: "video", type: "candidate", payload: RTCIceCandidate…}
latest.js:1
sending candidate
Object {to: "fjqOFWYz4lm5VfUanJ5J", broadcaster: undefined, roomType: "video", type: "candidate", payload: RTCIceCandidate…}
latest.js:1
SimpleWebRTC event: message
Object {to: "fjqOFWYz4lm5VfUanJ5J", broadcaster: undefined, roomType: "video", type: "candidate", payload: RTCIceCandidate…}
latest.js:1
sending candidate
Object {to: "fjqOFWYz4lm5VfUanJ5J", broadcaster: undefined, roomType: "video", type: "candidate", payload: RTCIceCandidate…}
latest.js:1
SimpleWebRTC event: message
Object {to: "fjqOFWYz4lm5VfUanJ5J", broadcaster: undefined, roomType: "video", type: "candidate", payload: RTCIceCandidate…}
latest.js:1
sending candidate
Object {to: "fjqOFWYz4lm5VfUanJ5J", broadcaster: undefined, roomType: "video", type: "candidate", payload: RTCIceCandidate…}
latest.js:1
SimpleWebRTC event: message
Object {to: "fjqOFWYz4lm5VfUanJ5J", broadcaster: undefined, roomType: "video", type: "candidate", payload: RTCIceCandidate…}
latest.js:1
sending candidate
Object {to: "fjqOFWYz4lm5VfUanJ5J", broadcaster: undefined, roomType: "video", type: "candidate", payload: RTCIceCandidate…}
latest.js:1
SimpleWebRTC event: message
Object {to: "fjqOFWYz4lm5VfUanJ5J", broadcaster: undefined, roomType: "video", type: "candidate", payload: RTCIceCandidate…}
latest.js:1
sending candidate
Object {to: "fjqOFWYz4lm5VfUanJ5J", broadcaster: undefined, roomType: "video", type: "candidate", payload: RTCIceCandidate…}
latest.js:1
SimpleWebRTC event: message
Object {to: "fjqOFWYz4lm5VfUanJ5J", broadcaster: undefined, roomType: "video", type: "candidate", payload: RTCIceCandidate…}
latest.js:1
sending candidate
Object {to: "fjqOFWYz4lm5VfUanJ5J", broadcaster: undefined, roomType: "video", type: "candidate", payload: RTCIceCandidate…}
latest.js:1
SimpleWebRTC event: message
Object {to: "fjqOFWYz4lm5VfUanJ5J", broadcaster: undefined, roomType: "video", type: "candidate", payload: RTCIceCandidate…}
latest.js:1
sending candidate
Object {to: "fjqOFWYz4lm5VfUanJ5J", broadcaster: undefined, roomType: "video", type: "candidate", payload: RTCIceCandidate…}
latest.js:1
SimpleWebRTC event: message
Object {to: "fjqOFWYz4lm5VfUanJ5J", broadcaster: undefined, roomType: "video", type: "candidate", payload: RTCIceCandidate…}
latest.js:1
sending candidate
Object {to: "fjqOFWYz4lm5VfUanJ5J", broadcaster: undefined, roomType: "video", type: "candidate", payload: RTCIceCandidate…}
latest.js:1
SimpleWebRTC event: message
Object {to: "fjqOFWYz4lm5VfUanJ5J", broadcaster: undefined, roomType: "video", type: "candidate", payload: RTCIceCandidate…}
latest.js:1
sending candidate
Object {to: "fjqOFWYz4lm5VfUanJ5J", broadcaster: undefined, roomType: "video", type: "candidate", payload: RTCIceCandidate…}
latest.js:1
SimpleWebRTC event: message
Object {to: "fjqOFWYz4lm5VfUanJ5J", broadcaster: undefined, roomType: "video", type: "candidate", payload: RTCIceCandidate…}
latest.js:1
sending candidate
Object {to: "fjqOFWYz4lm5VfUanJ5J", broadcaster: undefined, roomType: "video", type: "candidate", payload: RTCIceCandidate…}
latest.js:1
SimpleWebRTC event: message
Object {to: "fjqOFWYz4lm5VfUanJ5J", broadcaster: undefined, roomType: "video", type: "candidate", payload: RTCIceCandidate…}
latest.js:1
sending candidate
Object {to: "fjqOFWYz4lm5VfUanJ5J", broadcaster: undefined, roomType: "video", type: "candidate", payload: RTCIceCandidate…}
latest.js:1
SimpleWebRTC event: message
Object {to: "fjqOFWYz4lm5VfUanJ5J", broadcaster: undefined, roomType: "video", type: "candidate", payload: RTCIceCandidate…}
latest.js:1
sending candidate
Object {to: "fjqOFWYz4lm5VfUanJ5J", broadcaster: undefined, roomType: "video", type: "candidate", payload: RTCIceCandidate…}
latest.js:1
SimpleWebRTC event: message
Object {to: "fjqOFWYz4lm5VfUanJ5J", broadcaster: undefined, roomType: "video", type: "candidate", payload: RTCIceCandidate…}
latest.js:1
sending candidate
Object {to: "fjqOFWYz4lm5VfUanJ5J", broadcaster: undefined, roomType: "video", type: "candidate", payload: RTCIceCandidate…}
latest.js:1
SimpleWebRTC event: message
Object {to: "fjqOFWYz4lm5VfUanJ5J", broadcaster: undefined, roomType: "video", type: "candidate", payload: RTCIceCandidate…}
latest.js:1
sending candidate
Object {to: "fjqOFWYz4lm5VfUanJ5J", broadcaster: undefined, roomType: "video", type: "candidate", payload: RTCIceCandidate…}
latest.js:1
SimpleWebRTC event: message
Object {to: "fjqOFWYz4lm5VfUanJ5J", broadcaster: undefined, roomType: "video", type: "candidate", payload: RTCIceCandidate…}
latest.js:1
sending candidate
Object {to: "fjqOFWYz4lm5VfUanJ5J", broadcaster: undefined, roomType: "video", type: "candidate", payload: RTCIceCandidate…}
latest.js:1
SimpleWebRTC event: message
Object {to: "fjqOFWYz4lm5VfUanJ5J", broadcaster: undefined, roomType: "video", type: "candidate", payload: RTCIceCandidate…}
latest.js:1
getting answer
Object {to: "bcl0nBcPDk10-LZnnJ5b", roomType: "video", type: "answer", payload: Object, prefix: "moz"…}
from: "fjqOFWYz4lm5VfUanJ5J"
payload: Object
sdp: "v=0
↵o=Mozilla-SIPUA-25.0.1 20183 0 IN IP4 0.0.0.0
↵s=SIP Call
↵t=0 0
↵a=ice-ufrag:a86ac977
↵a=ice-pwd:8b6ed856b0298382fa36f8d19d38b434
↵a=fingerprint:sha-256 00:75:3A:97:E0:49:60:3F:6C:02:C8:40:A4:A6:E5:91:31:08:36:EA:04:C0:2D:0F:1C:40:31:B8:53:E5:DC:CE
↵m=audio 55930 RTP/SAVPF 111 126
↵c=IN IP4 50.46.150.144
↵a=rtpmap:111 opus/48000/2
↵a=ptime:20
↵a=rtpmap:126 telephone-event/8000
↵a=fmtp:126 0-15
↵a=sendrecv
↵a=candidate:0 1 UDP 2130444543 192.168.1.3 55930 typ host
↵a=candidate:1 1 UDP 1694302207 50.46.150.144 55930 typ srflx raddr 192.168.1.3 rport 55930
↵a=candidate:2 1 UDP 2130182399 169.254.116.174 49678 typ host
↵a=candidate:0 2 UDP 2130444542 192.168.1.3 51644 typ host
↵a=candidate:1 2 UDP 1694302206 50.46.150.144 51644 typ srflx raddr 192.168.1.3 rport 51644
↵a=candidate:2 2 UDP 2130182398 169.254.116.174 58351 typ host
↵m=video 55578 RTP/SAVPF 100
↵c=IN IP4 50.46.150.144
↵a=rtpmap:100 VP8/90000
↵a=sendrecv
↵a=candidate:0 1 UDP 2130444543 192.168.1.3 55578 typ host
↵a=candidate:1 1 UDP 1694302207 50.46.150.144 55578 typ srflx raddr 192.168.1.3 rport 55578
↵a=candidate:2 1 UDP 2130182399 169.254.116.174 65121 typ host
↵a=candidate:0 2 UDP 2130444542 192.168.1.3 61821 typ host
↵a=candidate:1 2 UDP 1694302206 50.46.150.144 61821 typ srflx raddr 192.168.1.3 rport 61821
↵a=candidate:2 2 UDP 2130182398 169.254.116.174 60298 typ host
↵a=rtcp-fb:* nack
↵a=rtcp-fb:* ccm fir
↵m=application 51192 RTP/SAVPF
↵c=IN IP4 50.46.150.144
↵a=sendrecv
↵a=candidate:0 1 UDP 2130444543 192.168.1.3 51192 typ host
↵a=candidate:1 1 UDP 1694302207 50.46.150.144 51192 typ srflx raddr 192.168.1.3 rport 51192
↵a=candidate:2 1 UDP 2130182399 169.254.116.174 61608 typ host
↵a=candidate:0 2 UDP 2130444542 192.168.1.3 53772 typ host
↵a=candidate:1 2 UDP 1694302206 50.46.150.144 53772 typ srflx raddr 192.168.1.3 rport 53772
↵a=candidate:2 2 UDP 2130182398 169.254.116.174 49709 typ host
↵"
type: "answer"
__proto__: Object
prefix: "moz"
roomType: "video"
to: "bcl0nBcPDk10-LZnnJ5b"
type: "answer"
__proto__: Object
latest.js:1
SimpleWebRTC event: connectionReady fjqOFWYz4lm5VfUanJ5J
latest.js (line 1)
Setup audio
latest.js (line 1)
SimpleWebRTC event: localStream LocalMediaStream { currentTime=0, stop=stop(), getAudioTracks=getAudioTracks(), more...}
latest.js (line 1)
SimpleWebRTC event: readyToCall fjqOFWYz4lm5VfUanJ5J
latest.js (line 1)
SimpleWebRTC event: joinedRoom My room name
latest.js (line 1)
Failed to create unreliable data channel.
latest.js (line 1)
getting offer Object { to="fjqOFWYz4lm5VfUanJ5J", roomType="video", type="offer", more...}
latest.js (line 1)
getting candidate Object { to="fjqOFWYz4lm5VfUanJ5J", roomType="video", type="candidate", more...}
latest.js (line 1)
getting candidate Object { to="fjqOFWYz4lm5VfUanJ5J", roomType="video", type="candidate", more...}
latest.js (line 1)
getting candidate Object { to="fjqOFWYz4lm5VfUanJ5J", roomType="video", type="candidate", more...}
latest.js (line 1)
getting candidate Object { to="fjqOFWYz4lm5VfUanJ5J", roomType="video", type="candidate", more...}
latest.js (line 1)
getting candidate Object { to="fjqOFWYz4lm5VfUanJ5J", roomType="video", type="candidate", more...}
latest.js (line 1)
getting candidate Object { to="fjqOFWYz4lm5VfUanJ5J", roomType="video", type="candidate", more...}
latest.js (line 1)
getting candidate Object { to="fjqOFWYz4lm5VfUanJ5J", roomType="video", type="candidate", more...}
latest.js (line 1)
getting candidate Object { to="fjqOFWYz4lm5VfUanJ5J", roomType="video", type="candidate", more...}
latest.js (line 1)
getting candidate Object { to="fjqOFWYz4lm5VfUanJ5J", roomType="video", type="candidate", more...}
latest.js (line 1)
getting candidate Object { to="fjqOFWYz4lm5VfUanJ5J", roomType="video", type="candidate", more...}
latest.js (line 1)
getting candidate Object { to="fjqOFWYz4lm5VfUanJ5J", roomType="video", type="candidate", more...}
latest.js (line 1)
getting candidate Object { to="fjqOFWYz4lm5VfUanJ5J", roomType="video", type="candidate", more...}
latest.js (line 1)
getting candidate Object { to="fjqOFWYz4lm5VfUanJ5J", roomType="video", type="candidate", more...}
latest.js (line 1)
getting candidate Object { to="fjqOFWYz4lm5VfUanJ5J", roomType="video", type="candidate", more...}
latest.js (line 1)
getting candidate Object { to="fjqOFWYz4lm5VfUanJ5J", roomType="video", type="candidate", more...}
latest.js (line 1)
getting candidate Object { to="fjqOFWYz4lm5VfUanJ5J", roomType="video", type="candidate", more...}
latest.js (line 1)
getting candidate Object { to="fjqOFWYz4lm5VfUanJ5J", roomType="video", type="candidate", more...}
latest.js (line 1)
getting candidate Object { to="fjqOFWYz4lm5VfUanJ5J", roomType="video", type="candidate", more...}
latest.js (line 1)
getting candidate Object { to="fjqOFWYz4lm5VfUanJ5J", roomType="video", type="candidate", more...}
latest.js (line 1)
getting candidate Object { to="fjqOFWYz4lm5VfUanJ5J", roomType="video", type="candidate", more...}
latest.js (line 1)
getting candidate Object { to="fjqOFWYz4lm5VfUanJ5J", roomType="video", type="candidate", more...}
latest.js (line 1)
getting candidate Object { to="fjqOFWYz4lm5VfUanJ5J", roomType="video", type="candidate", more...}
latest.js (line 1)
getting candidate Object { to="fjqOFWYz4lm5VfUanJ5J", roomType="video", type="candidate", more...}
latest.js (line 1)
getting candidate Object { to="fjqOFWYz4lm5VfUanJ5J", roomType="video", type="candidate", more...}
latest.js (line 1)
getting candidate Object { to="fjqOFWYz4lm5VfUanJ5J", roomType="video", type="candidate", more...}
latest.js (line 1)
getting candidate Object { to="fjqOFWYz4lm5VfUanJ5J", roomType="video", type="candidate", more...}
latest.js (line 1)
getting candidate Object { to="fjqOFWYz4lm5VfUanJ5J", roomType="video", type="candidate", more...}
latest.js (line 1)
getting candidate Object { to="fjqOFWYz4lm5VfUanJ5J", roomType="video", type="candidate", more...}
latest.js (line 1)
getting candidate Object { to="fjqOFWYz4lm5VfUanJ5J", roomType="video", type="candidate", more...}
latest.js (line 1)
getting candidate Object { to="fjqOFWYz4lm5VfUanJ5J", roomType="video", type="candidate", more...}
latest.js (line 1)
sending answer Object { to="bcl0nBcPDk10-LZnnJ5b", roomType="video", type="answer", more...}
latest.js (line 1)
SimpleWebRTC event: message Object { to="bcl0nBcPDk10-LZnnJ5b", roomType="video", type="answer", more...}
latest.js (line 1)
SimpleWebRTC event: videoAdded <video id="bcl0nBcPDk10-LZnnJ5b_video_incoming" autoplay="" src="mediastream:5a8c3ec1-219c-3a48-b6fc-d32d5cb3f999"> o { id="bcl0nBcPDk10-LZnnJ5b", parent=n, type="video", more...}
latest.js (line 1)
SimpleWebRTC event: peerStreamAdded o { id="bcl0nBcPDk10-LZnnJ5b", parent=n, type="video", more...}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment