Giter Site home page Giter Site logo

mslosarz / nextrtc-signaling-server Goto Github PK

View Code? Open in Web Editor NEW
182.0 182.0 59.0 413 KB

NextRTC is simple WebRTC signaling server written in java. It provides signal exchange and easy to integrate API

Home Page: http://nextrtc.org

License: MIT License

Java 100.00%
nextrtc webrtc webrtc-libraries webrtc-signaling

nextrtc-signaling-server's People

Contributors

jemakom avatar mslosarz avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

nextrtc-signaling-server's Issues

Is it possible to use nextRTC in mobile using for example ionic or native developing?

Hi! We've reached stage that we need a mobile version of our project. We using nextRTC in our backend development and it works fine with client-browser mode. As we know that noone RTC based frameworks don't work with iOS from browsers (even chrome) that's why we have some questions. We decided to create mobile application, it will be perfect if we use ionic 2 for mobile development because our engineers have experience in that only (we can't create native applications for ios and android because), that's why we would like to hear, at least, your opinion about our idea and possibilities? Is it possible to create mobile working version for android and ios at all? Thanks

How to use this library to create a java client

How to use this library to create a java client (no j2ee) but plain java simpe multiuser chat room

  1. Initiator x 4 users using client IDs joined into a room
  2. Send text or binary data to each other

Doesn't support more than two users

Hi, i saw your project its awesome.But i see it doesn't support more than two users at once, the second user is replaced with the third user when he joins new and if third with fourth, that happens so on. What can i do to have more than two users displayed?

Close websocket after webrtc connection estasblished

hi
a. I am trying to reduce server resources per connection, and one of the problems is that for each endpoint there is an open websocket and thread this uses allot of server resources and seems not necessary , what would be the best way to handle this issue? would it be ok just to close the websocket connection after webrtc negotiation is done ?

b. I want to send custom messages to a member from the server ( from a spring service in the server ), is there a service I can use to do that ?

Project build error

I'm trying to checkout source code and import to eclipse, but it show me an error as:
The import org.nextrtc.signalingserver.DaggerNextRTCComponent cannot be resolved

screen shot 2017-09-08 at 10 20 56 am
How can I resolve it?

Thank you,

Is nextRTC use a single thread to handle connections ?

I'm trying to understand the code and I feel that there is a single thread that handle all incoming connections but I'm not sure of it.

I've read carefully the documentation and it's not mentioned anywhere that the server is single threaded or using multiple threads to handle connections.

It would be useful to make the documentation more clear on this point.

Thanks,

NAT traversal

Has this server means to traverse NAT: STUN/TURN support?

Will it work over internet or only inside LAN?

Text chat support ?

Hello again,
I've seen you talked about text chat support in the 6# issue (closed).
I don't see any documentation on this feature, can you provide a short one ?

Lost signals

I found a problem where some messages (offerRequest most of the time) weren't delivered. The solution we found here is to call getRemotePeer().flushBatch() on the method send() in class InternalMessage.
Now, it works every time.

Invalid bean definition with name 'nextRTCEventBus' defined in org.nextrtc.signalingserver.NextRTCConfig

main] s.c.a.AnnotationConfigApplicationContext : Exception encountered during context initialization - cancelling refresh attempt: org.springframework.beans.factory.support.BeanDefinitionOverrideException: Invalid bean definition with name 'nextRTCEventBus' defined in org.nextrtc.signalingserver.NextRTCConfig: Cannot register bean definition [Root bean: class [null]; scope=; abstract=false; lazyInit=null; autowireMode=3; dependencyCheck=0; autowireCandidate=true; primary=false; factoryBeanName=org.nextrtc.signalingserver.NextRTCConfig; factoryMethodName=eventBus; initMethodName=null; destroyMethodName=(inferred); defined in org.nextrtc.signalingserver.NextRTCConfig] for bean 'nextRTCEventBus': There is already [Generic bean: class [org.nextrtc.signalingserver.api.NextRTCEventBus]; scope=singleton; abstract=false; lazyInit=null; autowireMode=0; dependencyCheck=0; autowireCandidate=true; primary=false; factoryBeanName=null; factoryMethodName=null; initMethodName=null; destroyMethodName=null; defined in URL [jar:file:/C:/Users/lue/.m2/repository/org/nextrtc/signalingserver/nextrtc-signaling-server/1.0.0-RC6/nextrtc-signaling-server-1.0.0-RC6.jar!/org/nextrtc/signalingserver/api/NextRTCEventBus.class]] bound.

How to find "main class" in nextrtc-signaling server

Hi,
I success to build nextrtc-signaling server.
but when I try to run, that error appear like this below.

"Failed to execute goal org.codehaus.mojo:exec-maven-plugin:1.5.0:java (default-cli) on project nextrtc-signaling-server: The parameters 'mainClass' for goal org.codehaus.mojo:exec-maven-plugin:1.5.0:java are missing or invalid"

Where and what is mainClass in nextrtc - signaling server?

Additionally,
If I want to use signaling server, do I need to create or modify your code?

I searched about your code, but I did not find anything about your code enough.
If you are OK, please reply my questions.
Thanks.

Authentication and security

I have an existing web application running in tomcat. I want to use this signalling server integrated with its user system and allow only those who are part of my user system to create rooms. Is there a way to do so? if so how do we make it?

Does this signaling server broad cast the SDP message to all those who are listening(kept open the index.html) to the signaling server?

In other words I want to know the aspects of security if we are going to use this.

Chat and data channel support

I was successfully able to run your demo on video chat.

Do you have a demo on Chat and data channel as well?

If there is a support how do we make it happen?

custom JoinConversation

Hi,
How can I add a custom implementation for JoinConversation ?
I want to add a join signal, that will not create a conversation if it doesn't exist?
I can see there is a way to add custom signals, but I am having problems to add an override to JoinConversation.
Can you please help with an example ?

Often video connection is not work

We've created project which allow people to connect with each other and see each other.

Our logic is when people start conversation it sends http request to backend for checking is there anyone who exist and waits for conversation also or not. If it's not it sends signal 'Create' and wait for another person. Second person also works with this logic and when he presses button 'Start' he sends http request and he detects that already someone exists in conversation and send to backend 'Join' signal.

From algoritm and logic everything is fine I think.
But there is a problem when, for example, they talk and see each other and someone decides to leave conversation and after some time (let it be fast for example 5 sec) he wants to join again and we get problem. He can join and it sends 'Join' signal also they are connected but Video translation is not work and honestly we can't catch this bug in production.
Sometimes it works fine but from 10 times this bug appears 3-4 times.

We have "Leave" button also, it appears when conversation from two people is created and they start see and talk. When person clicks "Leave" button it does "this.nextRTC.leave();" action and when callback comes that connection is closed I open it again via initNextRtc(); And it works like this every time when I leave or press F5 button.

  1. first Image shows how works perfect

1

  1. when I start reconnect it should connect me to the same person. But we can't see each other. By the way we can hear each other but no see. We don't know why.
    2

  2. this logs, please pay attention to what's happening after 'Join' signal. I mean nothing happens but it should make a lot of logs after that about candidate and so on.

dddddd

By the way, when every time person makes reconection sometimes it throws "java.io.IOException: An established connection was aborted by the software in the host machine" exception but anyway connection works fine. Maybe our bug is because of this?

Could you give us advcie how to correct 'leave' from conversation please?

And please, if you avaliable in skype add me Kascheypro. Because we create project which is not open source and screens may break some policy our company.

Thank you!

Use modern logging framework

Log4j 1 had reached end of life. Maybe it is worth to use logging facade like slf4j and allow end user to decide which logging implementation they want.

Join or create?

I'm trying to create a simple videochat usable by non IT people: I would like to have a single "join" button instead of having the users to figure if they should create or join a conversation.

How to I achieve this with nextRTC?

Signals stop working

Hi, I am using version v1.0.0-RC1, and sometimes the signals stop responding, I do not know why or what causes it.
Its difficult to reproduce. but happens occasionally.
Are you familiar with the issue ?
Please advise how to debug the reason and whats going on in the server .
thanks

Nextrtc in a distributed context?

Hello
I'm considering using nextrtc and wondering how it works in a distributed context with multiple backend servers?
If not, can the internal bus be replaced by hazelcast to allow this (it's just an idea)?
Thanks

RTP Streaming through the browser

Hi Marci,

I'm in the middle of building your project and I was just wanting to know if this would be possible with your nextRTC project.

I have an existing spring web application that streams rtp media to a client but I'm using a java applet to accomplish this.
It uses a low level recorder that streams the RTP on a UDP port of the client.
The RTP streams are streams coming from PSTN -> IP phone calls.
So I was thinking of moving to WebRTC using your project to get rid of the java applet.
I've already created a peer and am able to send out the candidates to the web socket.
Now, whenever I get an Ice Candidate, I would like to change the rtp port of the ice candidate to be the port where the low level recorder is streaming the RTP.

My questions would be,
#1. How do I identify, from an ICE candidate, that such candidate corresponds for the audio RTP?
#2. Is it safe to change the ICE candidate port? When I tried this out, the establishment of the connection when creating an answerer-offerer scenario on a client failed.

I basically do not want 2 clients to make calls to each other. I just want to stream an existing RTP media to a client.

Please let me know what you think.

Thank you.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.