5 changed files with 107 additions and 0 deletions
-
9pom.xml
-
20src/main/java/com/dreamworks/boditech/BoditechApplication.java
-
10src/main/java/com/dreamworks/boditech/controller/DeviceController.java
-
33src/main/java/com/dreamworks/boditech/utils/MyWebsocketClient.java
-
35src/main/java/com/dreamworks/boditech/utils/MyWebsocketServer.java
@ -1,9 +1,29 @@ |
|||
package com.dreamworks.boditech; |
|||
import com.dreamworks.boditech.utils.MyWebsocketClient; |
|||
import org.java_websocket.client.WebSocketClient; |
|||
import org.springframework.boot.SpringApplication; |
|||
import org.springframework.boot.autoconfigure.SpringBootApplication; |
|||
import org.springframework.context.annotation.Bean; |
|||
import org.springframework.web.socket.server.standard.ServerEndpointExporter; |
|||
import java.net.URI; |
|||
import java.net.URISyntaxException; |
|||
|
|||
@SpringBootApplication |
|||
public class BoditechApplication { |
|||
public static void main(String[] args) { |
|||
SpringApplication.run(BoditechApplication.class, args); |
|||
} |
|||
|
|||
@Bean |
|||
public WebSocketClient webSocketClient() throws URISyntaxException { |
|||
URI uri = new URI("wss://ws.postman-echo.com/raw"); |
|||
MyWebsocketClient webSocketClient = new MyWebsocketClient(uri); |
|||
webSocketClient.connect(); |
|||
return webSocketClient; |
|||
} |
|||
|
|||
@Bean |
|||
public ServerEndpointExporter websocketServerEndpointExporter() { |
|||
return new ServerEndpointExporter(); |
|||
} |
|||
} |
@ -0,0 +1,33 @@ |
|||
package com.dreamworks.boditech.utils; |
|||
import org.java_websocket.client.WebSocketClient; |
|||
import org.java_websocket.handshake.ServerHandshake; |
|||
import org.slf4j.Logger; |
|||
import org.slf4j.LoggerFactory; |
|||
import java.net.URI; |
|||
public class MyWebsocketClient extends WebSocketClient { |
|||
private static final Logger LOG = LoggerFactory.getLogger(MyWebsocketClient.class); |
|||
|
|||
public MyWebsocketClient(URI uri ) { |
|||
super(uri); |
|||
} |
|||
|
|||
@Override |
|||
public void onOpen(ServerHandshake serverHandshake) { |
|||
LOG.info("on open"); |
|||
} |
|||
|
|||
@Override |
|||
public void onMessage(String s) { |
|||
LOG.info("on message"); |
|||
} |
|||
|
|||
@Override |
|||
public void onClose(int i, String s, boolean b) { |
|||
LOG.info("on close"); |
|||
} |
|||
|
|||
@Override |
|||
public void onError(Exception e) { |
|||
LOG.info("on error"); |
|||
} |
|||
} |
@ -0,0 +1,35 @@ |
|||
package com.dreamworks.boditech.utils; |
|||
import jakarta.websocket.*; |
|||
import jakarta.websocket.server.ServerEndpoint; |
|||
import org.slf4j.Logger; |
|||
import org.slf4j.LoggerFactory; |
|||
import org.springframework.stereotype.Component; |
|||
|
|||
@Component |
|||
@ServerEndpoint("/ws") |
|||
public class MyWebsocketServer { |
|||
private static final Logger LOG = LoggerFactory.getLogger(MyWebsocketClient.class); |
|||
|
|||
private Session session; |
|||
|
|||
@OnOpen |
|||
public void onOpen(Session session) { |
|||
this.session = session; |
|||
LOG.info("ws server : on open"); |
|||
} |
|||
|
|||
@OnClose |
|||
public void onClose() { |
|||
LOG.info("ws server : on close"); |
|||
} |
|||
|
|||
@OnMessage |
|||
public void onMessage(String message) { |
|||
LOG.info("ws server : on message > " + message); |
|||
} |
|||
|
|||
@OnError |
|||
public void onError(Session session, Throwable error) { |
|||
LOG.info("ws server : on error"); |
|||
} |
|||
} |
Write
Preview
Loading…
Cancel
Save
Reference in new issue