Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Spring Boot video chat

I have task to create video chat which will allow to communicate two people witch each other. My architecture of application is: front-end Angular 2/typescript, backend: java, spring boot (and submodules). Everything works fine but I've got problem with understanding how to make video streaming. I was looking for any framework to do it but I've failed. As I understand WebSocket doesn't help me in this task and it's no appropriate to use it. Also as I understand Spring doesn't have any tool to solve the task. Is it really that I have to create streaming via clean UDP which exists in java or maybe there is another way, any framework which gives more higher interfaces for the task?

like image 240
Karpov Vladimir Avatar asked Feb 08 '17 17:02

Karpov Vladimir


People also ask

How to use Spring Boot chat in Java?

Next, start the Spring Boot Chat application by running it as a Java Application. Navigate to the following URL: http://localhost:8080. Enter the username. We are then shown the chat window.

How do I use Spring Boot chat with RabbitMQ?

We will need to perform one additional step with RabbitMQ: install the STOMP plugin for RabbitMQ so that it can work with STOMP Messages Next, start the Spring Boot Chat application by running it as a Java Application. Navigate to the following URL: http://localhost:8080. Enter the username. We are then shown the chat window.

How to improve Spring Boot and WebSockets?

As I mentioned in above, there are lot of room for improvement to get full blown solution of Spring Boot and WebSocket application. As example, you can use Spring Security to secure your WebSockets implementation. And so far, we're only using simple message broker.

How do I connect to a Spring Boot Server?

The connect () function uses SockJS and stomp client to connect to the /ws endpoint that we configured in Spring Boot. Upon successful connection, the client subscribes to /topic/public destination and tells the user’s name to the server by sending a message to the /app/chat.addUser destination.


1 Answers

The magic keyword here is "WebRTC", which is the browser support to support Audio and Video Real Time Communication for Web.

Basicly the communication is happening peer 2 peer between the browsers of your users. The only thing your application is responsible of, is the signaling...to exchange the peer data for your clients.

Based on that, check out this project called NextRTC for a reference.

like image 195
David Steiman Avatar answered Oct 03 '22 11:10

David Steiman