2016-08-24 3 views
0

phonegap 앱에 인스턴트 메시징 서비스를 갖고 싶습니다. 나는 이것을 위해 웹 소켓을 사용할 것을 고려 중이다. 나는 websocket.org를보고 내 브라우저에서 예제 코드를 테스트했다.전화 갭 채팅 응용 프로그램에는 Uri이 어떤 웹 소켓을 사용해야합니까?

<!DOCTYPE html> 
    <meta charset="utf-8" /> 
    <title>WebSocket Test</title> 
    <script language="javascript" type="text/javascript"> 

    var wsUri = "ws://echo.websocket.org/"; 
    var output; 

    function init() 
    { 
    output = document.getElementById("output"); 
    testWebSocket(); 
    } 

    function testWebSocket() 
    { 
    websocket = new WebSocket(wsUri); 
    websocket.onopen = function(evt) { onOpen(evt) }; 
    websocket.onclose = function(evt) { onClose(evt) }; 
    websocket.onmessage = function(evt) { onMessage(evt) }; 
    websocket.onerror = function(evt) { onError(evt) }; 
    } 

    function onOpen(evt) 
    { 
    writeToScreen("CONNECTED"); 
    doSend("WebSocket rocks"); 
    } 

    function onClose(evt) 
    { 
    writeToScreen("DISCONNECTED"); 
    } 

    function onMessage(evt) 
    { 
    writeToScreen('<span style="color: blue;">RESPONSE: ' + evt.data+'</span>'); 
    websocket.close(); 
    } 

    function onError(evt) 
    { 
    writeToScreen('<span style="color: red;">ERROR:</span> ' + evt.data); 
    } 

    function doSend(message) 
    { 
    writeToScreen("SENT: " + message); 
    websocket.send(message); 
    } 

    function writeToScreen(message) 
    { 
    var pre = document.createElement("p"); 
    pre.style.wordWrap = "break-word"; 
    pre.innerHTML = message; 
    output.appendChild(pre); 
    } 

    window.addEventListener("load", init, false); 

    </script> 

    <h2>WebSocket Test</h2> 

    <div id="output"></div> 

이제 내 자신의 구현을 할 때 wsUri 내가 사용해야하는 것이 궁금합니다. 나 자신의 도메인과 hostgator와 함께 호스팅하고 그들이 내 도메인에 websocket을 설정할 수 있지만 그들이 공유 호스팅이기 때문에 이것은 불가능하다고 말했다.

나는 또한 kaazing을 조사하고 있었다.

kaazing websocket-gateway editions 그러나 지원에서는 채팅 응용 프로그램의 경우 JMS가 있으므로 엔터프라이즈 에디션이 필요하다고 말했습니다. 엔터 프라이즈 에디션은 매우 비싼 것 같아요 그리고 이것은 개인 프로젝트로 시작하기 때문에 나는 그것을 감당할 수 없었다.

kaazing pricing

당신이 내 목적을 위해 웹 소켓에 연결하는 가장 좋은 또한 저렴한 방법에 대한 조언이 있습니까?

답변

1

사용자가 서비스에 액세스하려면 KWG를 설치할 수있는 공용 IP 주소가있는 컴퓨터가 필요합니다. 내가 아는 가장 저렴한 것은 가상 사설 서버로 알려진 클라우드 기반 Linux 컴퓨터입니다.

당신은 KWG를 설치하면,이 같은 URI 사용할 수있는 클라이언트 응용 프로그램 : WS : //your.ip.address : someport 예를 들어/some.service.path : WS : //193.20.23.45를 : 8000/jms

게이트웨이가 시작될 때 구성된 URI가 출력으로 표시됩니다.

간단한 채팅 프로젝트의 경우 무료 KWG 커뮤니티 버전을 사용하여 자체 메시지 라우팅 논리를 백엔드에서 만들 수 있습니다.

그러나, 당신은 디럭스와 같은 엔터프라이즈 버전에서 사용할 수있는 기능을 사용할 수 없습니다 : - 고 가용성 에 대한로드 밸런싱과 클러스터링 - 24 × 7 전 세계적으로 기업 지원 - 기업 쉴드 - JMS는 지원 - 배달 보장 - 자동 다시 연결 이상.

프로덕션 환경에서 프로젝트를 사용하지 않는 경우에도이 유형의 프로젝트에 사용할 수있는 100 연결 제한 사항으로 엔터프라이즈 버전의 게이트웨이를 계속 사용할 수 있습니다.

+0

귀하의 심층적 인 조언에 감사드립니다. 나는 이것을 대답으로 받아 들였다. :) – Sarah

관련 문제