Example usage for org.springframework.web.socket WebSocketSession sendMessage

List of usage examples for org.springframework.web.socket WebSocketSession sendMessage

Introduction

In this page you can find the example usage for org.springframework.web.socket WebSocketSession sendMessage.

Prototype

void sendMessage(WebSocketMessage<?> message) throws IOException;

Source Link

Document

Send a WebSocket message: either TextMessage or BinaryMessage .

Usage

From source file:org.springframework.cloud.aws.sample.websocket.SendingTextWebSocketHandler.java

private void sendTestMessageToAllSessions(String payload) throws IOException {
    List<WebSocketSession> sessionsToRemove = new ArrayList<>();
    for (WebSocketSession session : this.sessions) {
        if (!session.isOpen()) {
            sessionsToRemove.add(session);
        }/*from  ww  w.  ja  v a 2  s .  c  o  m*/
    }
    this.sessions.removeAll(sessionsToRemove);

    for (WebSocketSession session : this.sessions) {
        session.sendMessage(new TextMessage(payload));
    }
}

From source file:virnet.experiment.webSocket.hndler.MainSystemWebSocketHandler.java

public static synchronized void sendStatausToGroup(JSONObject jsonString, WebSocketSession webSS,
        String finalGroup) throws IOException {
    System.out.println("send");
    jsonString.put("ready", "true");
    System.out.println(jsonString.getString("ready"));
    jsonString.put("finalGroup", finalGroup);
    System.out.println(jsonString.getString("finalGroup"));
    System.out.println("before jump:");
    jsonString.put("userName", arrangeUserName.get(webSS));
    String mess = jsonString.toString();
    webSS.sendMessage(new TextMessage(mess));
}

From source file:com.visual_tools.nubomedia.nuboEarJava.NuboEarJavaHandler.java

private synchronized void sendMessage(WebSocketSession session, TextMessage message) {
    try {//from   w  w  w .ja  v  a2 s .  c o  m
        session.sendMessage(message);
    } catch (IOException e) {
        log.error("Exception sending message", e);
    }
}

From source file:org.kurento.tutorial.player.PlayerFrameSaverHandler.java

private synchronized void sendMessage(WebSocketSession session, String message) {
    try {/*  w ww .  j a  v  a2 s. c om*/
        session.sendMessage(new TextMessage(message));
    } catch (IOException e) {
        log.error("Exception sending message", e);
    }
}

From source file:com.pubkit.platform.messaging.PKMPConnectionHandler.java

@Override
public void handleTextMessage(WebSocketSession session, TextMessage message) throws Exception {
    String messagePayload = message.getPayload();
    if (PING.equals(messagePayload)) {
        LOG.debug("Received ping, Sending pong response");
        TextMessage textMessage = new TextMessage(PONG);
        session.sendMessage(textMessage);
    } else {/*  ww w.  j a  va  2s  .  co m*/
        LOG.debug("Received message payload");
        PKMPBasePayload pKMPBasePayload = gson.fromJson(messagePayload, PKMPBasePayload.class);
        if (pKMPBasePayload != null) {
            // publish to disruptor queue
            this.queueService.publishInputMessageEvent(pKMPBasePayload, session);
        } else {
            LOG.debug("Null message received from client");
        }
    }
}

From source file:samples.websocket.behavoir.RandomByteStreamWebSocketHandler.java

@Override
public void afterConnectionEstablished(final WebSocketSession session) throws Exception {
    final byte[] payload = new byte[4];

    Runnable sender = new Runnable() {

        @Override/* w w  w .jav  a2 s .co m*/
        public void run() {

            while (true)
                try {
                    new Random().nextBytes(payload);
                    session.sendMessage(new BinaryMessage(payload));
                    Thread.sleep(10);
                } catch (Exception e) {
                    return;
                }
        }
    };

    new Thread(sender).run();
}

From source file:io.sevenluck.chat.websocket.ChatWebSocketHandler.java

@Override
protected void handleTextMessage(WebSocketSession session, TextMessage message) throws Exception {
    final String myToken = (String) session.getAttributes().get(HttpAuthTokenHandShakeInterceptor.X_TOKEN);

    logger.info("handleTextMessage with message {} and token {}", message, myToken);
    String payload = message.getPayload();

    try {//from  w w w  .  j  a va2 s  .c  om
        ObjectMapper mapper = new ObjectMapper();
        ChatMessageDTO chatMessage = mapper.readValue(payload, ChatMessageDTO.class);

        final ChatRoom room = findChatRoom(chatMessage);
        if (null == room)
            return;

        chatMessageRepository.save(newInstance(session, room, chatMessage));
        List<ChatChannel> channels = chatChannelRepository.findByChatRoom(room);

        for (ChatChannel channel : channels) {

            List<ChatSession> chatSessions = chatSessionRepository.findByMember(channel.getMember());
            for (ChatSession chatSession : chatSessions) {

                if (!myToken.equals(chatSession.getAuthtoken())
                        && sessionMap.containsKey(chatSession.getAuthtoken())) {
                    WebSocketSession wsSession = sessionMap.get(chatSession.getAuthtoken()).getSession();
                    final String stringifyJSONObject = mapper.writeValueAsString(chatMessage);
                    wsSession.sendMessage(new TextMessage(stringifyJSONObject));
                }
            }
        }

    } catch (Exception e) {
        logger.error("TAG", e);
    }
}

From source file:com.devicehive.websockets.WebSocketApiInfoHandlerTest.java

@Test
public void shouldReturnApiInfo() throws Exception {
    final String requestId = "62345vxgsa5";

    CompletableFuture<TextMessage> future = new CompletableFuture<>();
    new StandardWebSocketClient().doHandshake(new TextWebSocketHandler() {
        @Override// w  ww  .  j  a  v a  2  s  .c  o  m
        protected void handleTextMessage(WebSocketSession session, TextMessage message) throws Exception {
            future.complete(message);
        }
    }, wsBaseUri() + "/websocket/client").addCallback(session -> {
        JsonObject apiInfoRequest = JsonFixture.createWsCommand("server/info", requestId);
        try {
            session.sendMessage(new TextMessage(gson.toJson(apiInfoRequest)));
        } catch (IOException e) {
            throw new RuntimeException(e);
        }
    }, future::completeExceptionally);

    future.thenAccept(response -> {
        JsonObject jsonResp = gson.fromJson(response.getPayload(), JsonObject.class);

        assertThat(jsonResp.get("action").getAsString(), is("server/info"));
        assertThat(jsonResp.get("requestId").getAsString(), is(requestId));
        assertThat(jsonResp.get("status").getAsString(), is("success"));
    }).exceptionally(e -> {
        fail(e.getMessage());
        return null;
    }).get(5, TimeUnit.SECONDS);
}

From source file:fi.vtt.nubomedia.armodule.BaseHandler.java

public void sendMessage(WebSocketSession session, TextMessage message) {
    try {//w w  w . j  a v  a  2  s  . c o m
        log.info("Sending message {} in session {}", message.getPayload(), session.getId());
        synchronized (session) {
            session.sendMessage(message);
        }

    } catch (IOException e) {
        log.error("Exception sending message", e);
    }
}

From source file:cz.cvut.fel.webrtc.handlers.WebHandler.java

private void presenter(WebUser user) throws IOException {
    Room room = roomManager.getRoom(user.getRoomName());

    if (!room.hasScreensharer()) {

        room.sendInformation(user, "presentationInfo");
        room.setScreensharer(user);/*from www.j a v a 2  s .co m*/
        user.isScreensharer(true);

    } else {

        JsonObject msg = new JsonObject();
        WebSocketSession session = user.getSession();

        msg.addProperty("id", "existingPresentation");
        synchronized (session) {
            session.sendMessage(new TextMessage(msg.toString()));
        }

    }
}