2012-06-05 2 views

답변

3

제 질문은 BOSH와 함께 XMPP를 사용할 수있는 방법입니다. XMPP와 BOSH의 관계는 무엇입니까 입니다.

BOSH는 http를 통한 양방향 스트림을 나타냅니다. HTTP를 통해 XMPP를 실행하도록 설계된 사양이지만 HTTP를 통해 기본 TCP 프로토콜을 실행하는 데 사용할 수 있습니다.

BOSH는 기본적으로 브라우저의 한계 내에서 작동합니다. 즉, 한 번에 특정 도메인에 2 개 이상의 요청을 할 수 없습니다. 그리고 이러한 한계 내에서 BOSH는 서버와 클라이언트간에 완전한 양방향 파이프를 에뮬레이트 할 수 있습니다. 페이로드는이 가상 파이프를 사용하여 전송할 수 있으며 사용자 경험은 실시간만큼 좋음을 알 수 있습니다.

전통적으로 BOSH는 long-polling이라는 기술을 사용하여 에뮬레이션됩니다. 그러나, 나는 성공적으로 jsonp 및 websocket (사용 가능한 경우)을 사용하여 동일하게 실행할 수있었습니다.

난 당신이 사용하여 웹 채팅 응용 프로그램의 충분한 샘플 예제를 찾을 것입니다 내기

을 같은 JAXL 같은 라이브러리를 사용하여 페이스 북 채팅을 구현하거나 strophe.js하는 방법 아이디어를 얻을 수있는 샘플 소스 코드가 strophe.js. 필요한 것은 punjab 또는 ebosh과 같은 bosh 연결 관리자 만 있으면됩니다.이 관리자는 모든 xmpp/jabber c2s 끝점에 연결할 수 있습니다.

JAXL 샘플 예제가있는 한, 다음은 직접 사용할 수있는 몇 가지 예입니다. https://github.com/abhinavsingh/JAXL/tree/master/app Joshl 라이브러리의 BOSH 측면 지원을 보여주는 boshchat.php, boshMUCchat.php 및 preFetchBOSH.php 예제를 자세히 살펴보십시오.

이 예는 보통 트래픽을 예상하는 경우에 사용할 수 있습니다. 과도한 트래픽 기반 응용 프로그램의 경우 strophe.js 기반 솔루션을 사용하는 것이 좋습니다.

+0

감사합니다. strophe.js를 사용하여 내 웹 사이트에서 faceboook 채팅을 구현하는 데 아주 가깝습니다. –

0

BOSH HTTP를 통해 서버에서 클라이언트로 메시지를 전송하는 기술입니다 strophe.js 어떤 샘플 소스 코드가 있습니다. TCP를 에뮬레이트하는 방법으로 XMPP/Jabber와 함께 사용하기 위해 개발되었지만 다른 기술에서 사용할 수 있습니다. 본질적으로 BOSH는 XMPP 메시지에서 가장 많이 사용되는 이동 통신사입니다.

question은 실제 구현과 관련하여 더 많은 도움을 줄 수 있습니다.