nextrtc-js-client

WebJar for nextrtc-js-client

License

License

MIT
Categories

Categories

JavaScript Languages CLI User Interface
GroupId

GroupId

org.webjars.npm
ArtifactId

ArtifactId

nextrtc-js-client
Last Version

Last Version

1.0.8
Release Date

Release Date

Type

Type

jar
Description

Description

nextrtc-js-client
WebJar for nextrtc-js-client
Project URL

Project URL

http://webjars.org
Source Code Management

Source Code Management

https://github.com/mslosarz/nextrtc-js-client

Download nextrtc-js-client

How to add to project

<!-- https://jarcasting.com/artifacts/org.webjars.npm/nextrtc-js-client/ -->
<dependency>
    <groupId>org.webjars.npm</groupId>
    <artifactId>nextrtc-js-client</artifactId>
    <version>1.0.8</version>
</dependency>
// https://jarcasting.com/artifacts/org.webjars.npm/nextrtc-js-client/
implementation 'org.webjars.npm:nextrtc-js-client:1.0.8'
// https://jarcasting.com/artifacts/org.webjars.npm/nextrtc-js-client/
implementation ("org.webjars.npm:nextrtc-js-client:1.0.8")
'org.webjars.npm:nextrtc-js-client:jar:1.0.8'
<dependency org="org.webjars.npm" name="nextrtc-js-client" rev="1.0.8">
  <artifact name="nextrtc-js-client" type="jar" />
</dependency>
@Grapes(
@Grab(group='org.webjars.npm', module='nextrtc-js-client', version='1.0.8')
)
libraryDependencies += "org.webjars.npm" % "nextrtc-js-client" % "1.0.8"
[org.webjars.npm/nextrtc-js-client "1.0.8"]

Dependencies

compile (1)

Group / Artifact Type Version
org.webjars.npm : webrtc-adapter jar [6.2.1,7)

Project Modules

There are no modules declared in this project.

NextRTC JavaScript client

NextRTC js client constructor requires:

  • 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

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/*/);

How to use nextrtc-js-client on static page?

When page will be fully loaded you should create nextrtc object. If you don’t know when your page is fully loaded you can use override method NextRTC.onReady (this way of use is presented in example).

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:

var nextRTC = new NextRTC({
    ...
});

nextRTC.on('{eventName}', function(event:Event){
    
});

There are two signals which are providing other second parameter type. Those signals are: localStream 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).

nextRTC.on('{localStream|remoteStream}', function({stream: Stream, member: memberId}){

});

How to send / handle custom signals?

On the js side you have to write two methods. One for sending new signal

NextRTC.prototype.upperCase = function upperCase(content, custom) {
    this.channel.send({signal: 'upperCase', content: 'content', custom: custom});
}; 

second one which will react on the response:

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:

nexrtc.upperCase('lowerCase');

Model

Event structure and available events are presented here

Event is serialized java version of message.

Versions

Version
1.0.8
0.0.4