페이지 트리

버전 비교

  • 이 줄이 추가되었습니다.
  • 이 줄이 삭제되었습니다.
  • 서식이 변경되었습니다.

웹소켓을 이용한 Push 서비스 제공


웹소켓을 이용하여 양방향 통신이 이루어져 실시간 통신이 가능합니다.

Start Release No : 7.0.400.20230330 / Update Release No :


작성자 : 박나미          / 검수자 : 정해영

기능 정보
  •  API Open
  •  UI Open
  •  Read Only
  •  Not Use
  •  Hidden
  •  Not Recommend
도움말
iconfalse
title기능 설명
  1. 보고서나 클라이언트에서 WebSocket 을 오픈한다.
    a. ws로 웹소켓 서버와 연결한다.
  2. 웹소켓을 통해 AUD7 서버로 메세지 전달 시에는 /api/ws/push/exec/send-message Restful API를 통해서 메세지를 전달한다.
    a. webSocketSendMessageApi() 참고한다.

코드 블럭
languagejs
themeFadeToGrey
firstline1
titleExample code
linenumberstrue
var wsId = Matrix.getObject("SocketId");


if (ws != undefined && ws.readyState !== WebSocket.CLOSED){
        alert("WebSocket is already opened");
} 	


ws = new WebSocket("ws://aud7서버주소/push");
            ws.onopen = function (event){
                //alert("websocket [open] ");
                ws.send("{\"serviceCode\":\""+reportCode+"\",\"data\":\"socket id 전달 요청\"}");
            }

            ws.onmessage = function (event){
                alert("[message] -"+event.data);
				var msg = JSON.parse(event.data);
				//var socketId = msg.socketId ;
				if (msg.socketId.length > 0)
					socketId.Text = msg.socketId ; 
				//alert("[socketId] -"+socketId);
            }

            ws.onclose = function (event){
                alert("[close] Websocket close");
            }




function webSocketSendMessageApi() {
 	var api = "/api/ws/push/exec/send-message";
	console.log(sendMsgText);
	if (sendMsgText.Text.length > 0){
		var searchParam = {
			"serviceCode": "서비스코드",
			"data": "발송메세지",
			"socketId": wsId.Text
    	};
		
		Matrix.CallRestAPI(api ,searchParam , null);
	}
}

세부 기능 명

내용

웹소켓으로 메세지 전달하는 API

  • /api/ws/push/exec/send-message
  • serviceCode : 서비스별 코드 
  • data : 발송할 메세지
  • socketId : 처음 Websocket을 오픈할 때 전달받은 socketId 전달


  •   WAS가 제우스인 경우에는 아래 옵션을 반드시 추가해 주어야 합니다.
    WEB-INF/classes/framework/service/service_api.properties 파일에서 matrix.was.jeus = true 로 변경하고 서버 기동해 주시기 바랍니다.