Wowza Community

WebRTC websockets issue

I am using a developer license and trying to setup WebRTC in wowza. I am hosting the /publish application on my own webserver and SSL certificate. I am also using nginx to reverse proxy the websockets connection.

I am managing to get a response from the websockets. It lists the ICE candidates and the SDP response. However I am getting an error which is shown:

DOMException: Failed to parse SessionDescription. a=fingerprint:sha-256  Failed to create fingerprint from the digest.
webrtc.js:204 iceCandidates: [object Object]
(index):1 Uncaught (in promise) DOMException: Error processing ICE candidate
webrtc.js:218 wsConnection.onclose

The setup instructions detail using streamlock which I am unable to do with my trial license. Can anyone shed some light into this and how I can proceed?

Thanks

I have managed to get past that issue by creating a self signed cert with the following command

keytool -genkey -keyalg RSA -alias wowza2 -keystore wowza -validity 365 -keysize 2048

However I am now seeing the /publish app connect without any issues logged in the console. It appears that the SDP is accepted and then the websockets closes. I assumed this was working and checked the incoming streams in wowza however there are none.

Can anyone advise on what I should check? Digging through the logs I can see the stream starting and then being destroyed due to a port binding issue.

2017-02-19	20:29:51	UTC	app-start	application	INFO	200	_definst_	webrtc/_definst_	-	-	-	12.828	-	-	-	-	-	-	-	-	-	-	-	-	-	-	-	-	-	-	-	-	-	-	-	-	-
2017-02-19	20:29:51	UTC	create	webrtc	INFO	200	-	-	_defaultVHost_	webrtc	_definst_	0.067	-	80	null	172.17.0.4	webrtc	-	known	303990261	0	0	1	0	0	0	myStream	-	-	-	-	-	null	null	-	null	-
2017-02-19	20:29:51	UTC	comment	server	INFO	200	-	WebRTCCommands.sendOffer[myStream]: audioCodec:opus	_defaultVHost_	webrtc	_definst_	12.97	-	80	null	172.17.0.4	webrtc	-	known	303990261	0	0	-	-	-	-	-	-	-	-	-	-	-	-	-	null	-
2017-02-19	20:29:51	UTC	comment	server	INFO	200	-	WebRTCRTPHandler.bind: port:1	_defaultVHost_	webrtc	_definst_	12.973	-	80	null	172.17.0.4	webrtc	-	known	303990261	0	0	-	-	-	-	-	-	-	-	-	-	-	-	-	null	-
2017-02-19	20:29:51	UTC	comment	server	INFO	200	-	WebRTCRTPHandler.bind: port:2	_defaultVHost_	webrtc	_definst_	12.974	-	80	null	172.17.0.4	webrtc	-	known	303990261	0	0	-	-	-	-	-	-	-	-	-	-	-	-	-	null	-
2017-02-19	20:29:51	UTC	comment	server	INFO	200	-	WebRTCCommands.sendOffer[myStream]: videoCodec:VP8	_defaultVHost_	webrtc	_definst_	12.974	-	80	null	172.17.0.4	webrtc	-	known	303990261	0	0	-	-	-	-	-	-	-	-	-	-	-	-	-	null	-
2017-02-19	20:29:51	UTC	comment	server	INFO	200	-	WebRTCRTPHandler.bind: port:3	_defaultVHost_	webrtc	_definst_	12.975	-	80	null	172.17.0.4	webrtc	-	known	303990261	0	0	-	-	-	-	-	-	-	-	-	-	-	-	-	null	-
2017-02-19	20:29:51	UTC	comment	server	INFO	200	-	WebRTCRTPHandler.bind: port:4	_defaultVHost_	webrtc	_definst_	12.975	-	80	null	172.17.0.4	webrtc	-	known	303990261	0	0	-	-	-	-	-	-	-	-	-	-	-	-	-	null	-
2017-02-19	20:29:51	UTC	comment	server	INFO	200	-	WebRTCCommands.sendOffer[myStream]: iceCandidate:candidate:0 1 UDP 50 0.0.0.0 6970 typ host generation 0	_defaultVHost_	webrtc	_definst_	12.976	-	80	null	172.17.0.4	webrtc	-	known	303990261	0	0	-	-	-	-	-	-	-	-	-	-	-	-	-	null	-
2017-02-19	20:29:51	UTC	comment	server	INFO	200	-	WebSocketSession.destroy[942268853]: source:client status:-1 description:Unknown	-	-	-	13.039	-	-	-	-	-	-	-	-	-	-	-	-	-	-	-	-	-	-	-	-	-	-	-	-	-
2017-02-19	20:29:52	UTC	comment	server	INFO	200	-	RESTServer: Bind attempt ([any]:8087)	-	-	-	10.493	-	-	-	-	-	-	-	-	-	-	-	-	-	-	-	-	-	-	-	-	-	-	-	-	-
2017-02-19	20:29:52	UTC	comment	server	WARN	200	-	RESTServer: Bind failed, try again ([any]:8087): java.net.BindException: Address already in use|at sun.nio.ch.Net.bind0(Native Method)|at sun.nio.ch.Net.bind(Net.java:433)|at sun.nio.ch.Net.bind(Net.java:425)|at sun.nio.ch.ServerSocketChannelImpl.bind(ServerSocketChannelImpl.java:223)|at sun.nio.ch.ServerSocketAdaptor.bind(ServerSocketAdaptor.java:74)|	-	-	-	10.499	-	-	-	-	-	-	-	-	-	-	-	-	-	-	-	-	-	-	-	-	-	-	-	-	-
2017-02-19	20:29:56	UTC	comment	server	INFO	200	-	WebRTCSession.shutdown[303990261]: Shutdown WebRTC session.	-	-	-	17.945	-	-	-	-	-	-	-	-	-	-	-	-	-	-	-	-	-	-	-	-	-	-	-	-	-
2017-02-19	20:29:56	UTC	unpublish	webrtc	INFO	200	-	-	_defaultVHost_	webrtc	_definst_	5.071	-	80	null	172.17.0.4	webrtc	-	known	303990261	0	0	1	0	0	0	myStream	-	-	-	-	-	null	null	-	null	-
2017-02-19	20:29:56	UTC	destroy	stream	INFO	200	-	-	_defaultVHost_	webrtc	_definst_	5.051	-	80	null	172.17.0.4	webrtc	-	known	303990261	0	0	1	0	0	0	myStream	-	-	-	-	-	null	null	-	null	-
2017-02-19	20:29:57	UTC	comment	server	INFO	200	-	RESTServer: Bind attempt ([any]:8087)	-	-	-	15.501	-	-	-	-	-	-	-	-	-	-	-	-	-	-	-	-	-	-	-	-	-	-	-	-	-
2017-02-19	20:29:57	UTC	comment	server	WARN	200	-	RESTServer: Bind failed, try again ([any]:8087): java.net.BindException: Address already in use|at sun.nio.ch.Net.bind0(Native Method)|at sun.nio.ch.Net.bind(Net.java:433)|at sun.nio.ch.Net.bind(Net.java:425)|at sun.nio.ch.ServerSocketChannelImpl.bind(ServerSocketChannelImpl.java:223)|at sun.nio.ch.ServerSocketAdaptor.bind(ServerSocketAdaptor.java:74)|	-	-	-	15.505	-	-	-	-	-	-	-	-	-	-	-	-	-	-	-	-	-	-	-	-	-	-	-	-	-

Thanks

Hello,

The port you are referencing is for administration with Wowza Streaming Engine Manager and is probably not causing the issue. I would double check that another program is not trying to bind to that port.

I would recommend having the below ports open in your firewall and port forward if going across networks.

TCP: 1935 RTP streaming

TCP: 443 for SSL

TCP: 9443 if using Wowza Simple Web Server

UDP: 6970-9999 and sometimes up to 65535

Regards,

JasonT

Does your concept of channels also support “any bidirectional protocol with backpressure”? Because for any serious scaling to happen you do need backpressure. Otherwise you have only messaging, not really channels. Websockets do not support backpressure, WebRTC does.