How to send message using websocket whenever an API is called using springboot?

Viewed 91

I have a simple controller which return name . I have websocket handler which return message to client as: Hey there, presentation recieved from user. whenever http://localhost:8080/sample is called, i need to display the above message to <ws://localhost:8080/presentation>, using https://websocketking.com/ to connect to websocket.

@RestController
public class WebController {
    @RequestMapping("/sample")
    public SampleResponse Sample(@RequestParam(value = "name",
    defaultValue = "Robot") String name) {
        SampleResponse response = new SampleResponse();
        response.setId(1);
        response.setMessage("Your name is "+name);
        return response;

    }
}
@Component
public class WebSocketHandler extends AbstractWebSocketHandler {
    @Override
    public void handleTextMessage(WebSocketSession session, TextMessage message) throws IOException {
        System.out.println("New Text Message Received from presetation");
        String payload = message.getPayload();
        System.out.println(payload);

      
        session.sendMessage(new TextMessage("Hey there, presentation recieved from user"));
    }
}
public class WebSocketConfiguration implements WebSocketConfigurer {
  

    @Override
    public void registerWebSocketHandlers(WebSocketHandlerRegistry registry) {
        registry.addHandler(new WebSocketHandler(), "/presentation").setAllowedOrigins("*");
    }
}
0 Answers
Related