GithubHelp home page GithubHelp logo

Comments (19)

dbrgn avatar dbrgn commented on May 9, 2024

@lgrahl is the demo server already using the latest protocol version?

from saltyrtc-client-java.

sibirchakraborty avatar sibirchakraborty commented on May 9, 2024

Yes I checked that 0.8.2 (running v0 protocol is working fine with demo server). I have some difficult in setting the demo server on windows, hence would like to use the demo server for the time being.

NOTE: How to connect Initiator and Receiver from different IPs?

from saltyrtc-client-java.

lgrahl avatar lgrahl commented on May 9, 2024

@dbrgn Nope. Updated it just now, thanks for the reminder. :) Probably incompatible with the demo until its being updated.

@sibirchakraborty The demo worked because it uses v0. The current master of this repository however does already use v1. I upgraded the server to v1 now. Try again.

By the way, there shouldn't be any issues running the server on windows, so let us know if there are any issues (in the server repo).

I don't understand your last question. The IPs of the clients do not matter at all, they find each other by the public key of the initiator.

from saltyrtc-client-java.

sibirchakraborty avatar sibirchakraborty commented on May 9, 2024

from saltyrtc-client-java.

lgrahl avatar lgrahl commented on May 9, 2024

Nope. We had no need for that so far.

from saltyrtc-client-java.

lgrahl avatar lgrahl commented on May 9, 2024

Is this issue resolved or do you still have problems with the sub-protocol?

from saltyrtc-client-java.

sibirchakraborty avatar sibirchakraborty commented on May 9, 2024

from saltyrtc-client-java.

lgrahl avatar lgrahl commented on May 9, 2024

Yes, that's possible. Simply don't provide a certificate and a key and the server will tell you what you need to do.

saltyrtc-server serve

It is REQUIRED to provide a SSL certificate and a server permanent key unless the environment variable 'SALTYRTC_SAFETY_OFF' is set to 'yes-and-i-know-what-im-doing'

You can ask further questions to the server in its respository. :)

from saltyrtc-client-java.

sibirchakraborty avatar sibirchakraborty commented on May 9, 2024

from saltyrtc-client-java.

lgrahl avatar lgrahl commented on May 9, 2024

I think you have to override the protocol attribute of the Signaling class. It's intentionally hard to prevent insecure usage. @dbrgn can tell you more.

from saltyrtc-client-java.

dbrgn avatar dbrgn commented on May 9, 2024

@sibirchakraborty right now the saltyrtc-client-java does not support connection to a server without TLS.

What would be the reason why you don't want TLS? For testing? If that's the case, I've planned to add documentation on how to generate a self-signed certificate for testing. You could also take a look at the testing setup that generates a self-signed certificate and adds it to a Java KeyStore: https://github.com/saltyrtc/saltyrtc-client-java/blob/master/.travis.yml#L25-L28 The same JKS file could be used in the client, see here. (Yes it's a bit complicated, but that's Java 🙄)

Regarding the demo app, I'll update it soon to use the latest protocol version.

from saltyrtc-client-java.

dbrgn avatar dbrgn commented on May 9, 2024

The demo (https://github.com/saltyrtc/saltyrtc-demo) is now updated to the latest version. We still have quite some documenting to do :)

from saltyrtc-client-java.

sibirchakraborty avatar sibirchakraborty commented on May 9, 2024

from saltyrtc-client-java.

dbrgn avatar dbrgn commented on May 9, 2024

@sibirchakraborty group messaging is not currently supported by the protocol, SaltyRTC is intended for point-to-point connections. As far as I know, the same counts for WebRTC, a DataChannel is always between two peers.

You could designate one of the users as "admin" though. The admin has connections to all people in the chatroom and relays messages for them.

from saltyrtc-client-java.

sibirchakraborty avatar sibirchakraborty commented on May 9, 2024

from saltyrtc-client-java.

dbrgn avatar dbrgn commented on May 9, 2024

Technically possible, yes. But not currently supported by SaltyRTC.

Please open an issue here https://github.com/saltyrtc/saltyrtc-server-python/issues if you want to know more.

from saltyrtc-client-java.

lgrahl avatar lgrahl commented on May 9, 2024

You can do whatever you want on top of SaltyRTC. To establish a group chat using WebRTC data channels, you have to connect every peer with every other peer (or have a master peer that relays all data). The first one is quite finicky (but so is peer-to-peer group communication). The second one is easy:

  1. Master peer acting as initiator generates a key for the upcoming responder.
  2. Responder connects to the master peer using SaltyRTC.
  3. Data channel messages are relayed from the master peer to each other peer.
  4. (Optionally establish a connection to each other peer now.)

Only the key management will become easier and the amount of initial WebSocket connection will be less once we add group communication. Fully meshed peer-to-peer group communication will remain complex.

PeerJS will require exactly the same management but with PeerJS there will be no end-to-end encryption during the signalling phase, thus it's a much easier protocol.

from saltyrtc-client-java.

sibirchakraborty avatar sibirchakraborty commented on May 9, 2024

from saltyrtc-client-java.

dbrgn avatar dbrgn commented on May 9, 2024

Maybe. It definitely has low priority though. The tracking issue is here: saltyrtc/saltyrtc-meta#83

I'll close this issue for now. If you have further questions, feel free to open a new issue in the respective project.

from saltyrtc-client-java.

Related Issues (20)

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.