¶Ô±ÈÐÂÎļþ |
| | |
| | | package com.smtaiserver.smtaiserver.control;
|
| | |
|
| | | import org.springframework.messaging.Message;
|
| | | import org.springframework.messaging.handler.annotation.MessageMapping;
|
| | | import org.springframework.messaging.handler.annotation.SendTo;
|
| | | import org.springframework.stereotype.Controller;
|
| | |
|
| | | @Controller
|
| | | public class SMTWebsocketControl |
| | | {
|
| | | // å¤çæ¥èª"/app/chat"çæ¶æ¯
|
| | | @MessageMapping("/chat")
|
| | | // å°è¿åçæ¶æ¯åéå°"/topic/messages"
|
| | | @SendTo("/topic/messages")
|
| | | public Message<?> send(Message<?> message) throws Exception |
| | | {
|
| | | return message;
|
| | | }
|
| | | }
|
| | |
| | | {
|
| | | // æ§è¡ä¸ä¸ä¸ªèç¹
|
| | | SMTJsonFlowNodeExec flowNodeExec = execArg._stackNodeExec.pollFirst();
|
| | | execArg._tranReq.sendChunkedBlock("begin", "æ§è¡å·¥ä½æµèç¹:" + flowNodeExec._flowNode.getTitle() + "(" + flowNodeExec._flowNode.getId() + ")");
|
| | | execArg._tranReq.sendChunkedBlock("begin", "æ§è¡èç¹:" + flowNodeExec._flowNode.getTitle() + "(" + flowNodeExec._flowNode.getId() + ")");
|
| | | SMTJavaAIError error = flowNodeExec.executeFlowNode(execArg);
|
| | | if(error != null)
|
| | | return error;
|
¶Ô±ÈÐÂÎļþ |
| | |
| | | package com.smtaiserver.smtaiserver.web;
|
| | |
|
| | | import org.springframework.context.annotation.Configuration;
|
| | | import org.springframework.messaging.simp.config.MessageBrokerRegistry;
|
| | | import org.springframework.web.socket.config.annotation.EnableWebSocketMessageBroker;
|
| | | import org.springframework.web.socket.config.annotation.StompEndpointRegistry;
|
| | | import org.springframework.web.socket.config.annotation.WebSocketMessageBrokerConfigurer;
|
| | |
|
| | | @Configuration
|
| | | @EnableWebSocketMessageBroker
|
| | | public class SMTWebSocketConfig implements WebSocketMessageBrokerConfigurer
|
| | | {
|
| | | @Override
|
| | | public void configureMessageBroker(MessageBrokerRegistry config)
|
| | | {
|
| | | // è®¾ç½®æ¶æ¯ä»£ççåç¼ï¼å³å¦ææ¶æ¯çåç¼æ¯"/topic"ï¼å°±ä¼å°æ¶æ¯è½¬åç»æ¶æ¯ä»£çï¼brokerï¼
|
| | | // åç±æ¶æ¯ä»£çå°æ¶æ¯å¹¿æç»å½åè¿æ¥ç客æ·ç«¯
|
| | | config.enableSimpleBroker("/topic");
|
| | | // é
ç½®ä¸ä¸ªæå¤ä¸ªåç¼ï¼éè¿è¿äºåç¼è¿æ»¤åºéè¦è¢«æ³¨è§£æ¹æ³å¤ççæ¶æ¯
|
| | | // ä¾å¦"/app"åç¼çdestinationå¯ä»¥éè¿@MessageMappingæ³¨è§£çæ¹æ³å¤ç
|
| | | config.setApplicationDestinationPrefixes("/app");
|
| | | }
|
| | |
|
| | | @Override
|
| | | public void registerStompEndpoints(StompEndpointRegistry registry) {
|
| | | // å®ä¹ä¸ä¸ªåç¼ä¸º"/ws"çendpointï¼å¹¶å¼å¯sockjsæ¯æ
|
| | | // sockjså¯ä»¥è§£å³æµè§å¨å¯¹WebSocketçå
¼å®¹æ§é®é¢
|
| | | registry.addEndpoint("/ws").withSockJS();
|
| | | }
|
| | | }
|