List of usage examples for org.springframework.web.socket WebSocketSession sendMessage
void sendMessage(WebSocketMessage<?> message) throws IOException;
From source file:ch.rasc.wampspring.testsupport.BaseWampTest.java
protected void authenticate(CompletableFutureWebSocketHandler result, WebSocketSession webSocketSession) throws IOException, InterruptedException, InvalidKeyException, NoSuchAlgorithmException, ExecutionException, TimeoutException { CallMessage authReqCallMessage = new CallMessage("1", "http://api.wamp.ws/procedure#authreq", "a", Collections.emptyMap()); webSocketSession.sendMessage(new TextMessage(authReqCallMessage.toJson(this.jsonFactory))); WampMessage response = result.getWampMessage(); assertThat(response).isInstanceOf(CallResultMessage.class); CallResultMessage resultMessage = (CallResultMessage) response; assertThat(resultMessage.getCallID()).isEqualTo("1"); assertThat(resultMessage.getResult()).isNotNull(); result.reset();/*from ww w .j a va2s .c o m*/ String challengeBase64 = (String) resultMessage.getResult(); String signature = DefaultAuthenticationHandler.generateHMacSHA256("secretofa", challengeBase64); CallMessage authCallMessage = new CallMessage("2", "http://api.wamp.ws/procedure#auth", signature); webSocketSession.sendMessage(new TextMessage(authCallMessage.toJson(this.jsonFactory))); response = result.getWampMessage(); assertThat(response).isInstanceOf(CallResultMessage.class); resultMessage = (CallResultMessage) response; assertThat(resultMessage.getCallID()).isEqualTo("2"); assertThat(resultMessage.getResult()).isNull(); result.reset(); }
From source file:org.opencron.server.websocket.TerminalHandler.java
@Override public void afterConnectionEstablished(WebSocketSession session) throws Exception { super.afterConnectionEstablished(session); String sshSessionId = OpencronTools.getSshSessionId(); if (sshSessionId != null) { final Terminal terminal = TerminalContext.remove(sshSessionId); if (terminal != null) { try { session.sendMessage(new TextMessage("Welcome to Opencron Terminal! Connect Starting.")); getClient(session, terminal); int cols = Integer.parseInt(session.getAttributes().get("cols").toString()); int rows = Integer.parseInt(session.getAttributes().get("rows").toString()); int width = Integer.parseInt(session.getAttributes().get("width").toString()); int height = Integer.parseInt(session.getAttributes().get("height").toString()); terminalClient.openTerminal(cols, rows, width, height); terminalService.login(terminal); } catch (Exception e) { if (e.getLocalizedMessage().replaceAll("\\s+", "").contentEquals("Operationtimedout")) { session.sendMessage(new TextMessage("Sorry! Connect timed out, please try again. ")); } else { session.sendMessage(new TextMessage("Sorry! Operation error, please try again. ")); }/*from ww w. ja v a 2 s .c o m*/ terminalClient.disconnect(); session.close(); } } else { this.terminalClient.disconnect(); session.sendMessage(new TextMessage("Sorry! Connect failed, please try again. ")); session.close(); } } }
From source file:com.devicehive.websockets.AbstractWebSocketHandler.java
@Override protected void handleTextMessage(WebSocketSession session, TextMessage message) throws Exception { logger.debug("Session id {} ", session.getId()); session = sessionMonitor.getSession(session.getId()); JsonObject request = new JsonParser().parse(message.getPayload()).getAsJsonObject(); JsonObject response = webSocketResponseBuilder.buildResponse(request, session); session.sendMessage(new TextMessage(response.toString())); }
From source file:com.hxh.websocket.service.UserOnlineService.java
/** * ???/*w w w.j a va2s .c om*/ * ???WebSocketSession??? * @param msg */ private void pushMessageToWebClient(JsonMessage msg) { System.out.println("?"); System.out.println(":" + sessions.size()); synchronized (sessions) { for (WebSocketSession s : sessions) { ObjectMapper mapper = new ObjectMapper(); StringWriter sw = new StringWriter(); try { mapper.writeValue(sw, msg); String jsonmsg = sw.toString(); System.out.println("?:" + jsonmsg); s.sendMessage(new TextMessage(jsonmsg)); } catch (IOException ex) { Logger.getLogger(UserOnlineService.class.getName()).log(Level.SEVERE, null, ex); } } } }
From source file:org.kurento.tutorial.helloworld.HelloWorldRecHandler.java
public void sendPlayEnd(WebSocketSession session, MediaPipeline pipeline) { try {/*from w ww . j a v a2 s.c o m*/ JsonObject response = new JsonObject(); response.addProperty("id", "playEnd"); session.sendMessage(new TextMessage(response.toString())); } catch (IOException e) { log.error("Error sending playEndOfStream message", e); } // Release pipeline pipeline.release(); }
From source file:cn.sinobest.websocket.handler.SimpleClientWebSocketHandler.java
/** * ??/* w ww .j a v a 2s .com*/ * * @param webSocketSession WebSocketSession * @param webSocketMessage WebSocketMessage * @throws Exception */ @Override public void handleMessage(WebSocketSession webSocketSession, WebSocketMessage<?> webSocketMessage) throws Exception { String param = webSocketMessage.getPayload().toString(); logger.info("handleMessage" + param); String result = messageService.handleMessage(param); logger.info("handleMessageResult" + result); //?? webSocketSession.sendMessage(new TextMessage(result)); //? //messageService.saveLog("handleMessage",param,webSocketSession.getRemoteAddress().getAddress().getHostAddress(),result,""); }
From source file:org.kurento.tutorial.frame_saver.FrameSaverHandler.java
private void sendError(WebSocketSession aSession, String aMessage) { try {/* w w w.j av a 2 s . c o m*/ JsonObject response_obj = new JsonObject(); response_obj.addProperty("id", "error"); response_obj.addProperty("message", aMessage); String response_str = response_obj.toString(); aSession.sendMessage(new TextMessage(response_str)); } catch (IOException ex) { mLogger.error("Exception sending message", ex); } }
From source file:com.zb.app.websocket.api.MessagePushAPI.java
private void doSend(Long cId, Long mId, String msg) { Collection<WebSocketSession> set = sessionHandler.getSession(mId); if (Argument.isEmpty(set)) { logger.error(/*w w w. ja va 2 s .c o m*/ "MessagePushAPI:sendPushMsg msg error:?{},cid:?{},mid:?{}is offLine!webSocketSession set is null!", msg, cId, mId); } for (WebSocketSession session : set) { if (session == null) { logger.error( "MessagePushAPI:sendPushMsg msg error:?{},cid:?{},mid:?{}is offLine!session is null!", msg, cId, mId); } try { session.sendMessage(new TextMessage(msg)); logger.debug( "MessagePushAPI:sendPushMsg msg success:?{},cid:?{},mid:?{},sessionId:?{}", msg, cId, mId, session.getId()); } catch (Exception e) { logger.error( "MessagePushAPI:sendPushMsg msg error:?{},cid:?{},mid:?{},sessionId:?{}", msg, cId, mId, session.getId()); } } }
From source file:ch.rasc.wampspring.config.WampSubProtocolHandler.java
@Override public void afterSessionStarted(WebSocketSession session, MessageChannel outputChannel) { if (session.getTextMessageSizeLimit() < MINIMUM_WEBSOCKET_MESSAGE_SIZE) { session.setTextMessageSizeLimit(MINIMUM_WEBSOCKET_MESSAGE_SIZE); }//from ww w.j a v a2 s .co m WelcomeMessage welcomeMessage = new WelcomeMessage(session.getId(), SERVER_IDENTIFIER); try { session.sendMessage(new TextMessage(welcomeMessage.toJson(this.jsonFactory))); } catch (IOException e) { logger.error("Failed to send welcome message to client in session " + session.getId() + ".", e); } }
From source file:com.github.mrstampy.gameboot.websocket.AbstractWebSocketProcessor.java
/** * Send message, must be a byte array or a string. * * @param session/*from w w w . j a va 2 s . c o m*/ * the session * @param msg * the msg * @throws Exception * the exception */ public void sendMessage(WebSocketSession session, Object msg) throws Exception { WebSocketMessage<?> toGo = createMessage(session, msg); session.sendMessage(toGo); }