JS Client to NextRTC signaling server
npm install nextrtc-js-client* wsURL which should points to your endpoint {ws/wss}://{host}:{port}/{applicationName}/{endpointGivenInAnnotation}
endpointGivenInAnnotation e.g. – @ServerEndpoint(value = “/signaling” …)
* mediaConfig are passed straight to adapter, so more information about parametres you can find in webrtc/adapter documentation.
* peerConfig are also described in webrtc/adapter project.
Example is shown below and it’s also available in nextrtc-sample-webapp
``js`
new NextRTC({
wsURL : 'wss://examples.nextrtc.org/videochat/signaling',
mediaConfig : {
video : true,
audio : true,
},
peerConfig : {
'iceServers' : [ {
url : "stun:stun.l.google.com:19302"
}]
}
}/, optional DEBUG mode /true or false//);
When you create NextRTC object you have to provide function which will be called when event happens.
To register function you have to call method on() as presented in snipped:
`js
var nextRTC = new NextRTC({
...
});
nextRTC.on('{eventName}', function(event:Event){
});
`localStream
There are two signals which are providing other second parameter type. Those signals are: and remoteStream, when you are handling local audio/video stream and incoming audio/video stream you can simply attach stream to valid element (without additional action like resolving stream by description provided in event).
`js
nextRTC.on('{localStream|remoteStream}', function({stream: Stream, member: memberId}){
});
`
On the js side you have to write two methods. One for sending new signal
`js`
NextRTC.prototype.upperCase = function upperCase(content, custom) {
this.channel.send({signal: 'upperCase', content: 'content', custom: custom});
}; `
second one which will react on the response:js`
nextRTC.on('upperCase', content => {
// here you should handle the response
});`
Then you will be able to use structure like this to post your custom signal:js``
nexrtc.upperCase('lowerCase');
Event structure and available events are presented here
Event is serialized java version of message.