2010-08-17 4 views

답변

4

JID가 온라인인지 여부에 관계없이 메시지를 유형 = '헤드 라인'으로 보냅니다. 수신자가 오프라인 인 경우 제목 메시지를 나중에 배달 할 수 있도록 저장해서는 안됩니다.

이 방법은 수행 할 수있는 것보다 훨씬 빠르고 휴대가 편리합니다.

당신은 MUST 사용자가 온라인인지에 따라 다른 일을 할, 당신은 사용자의 현재 상태를 구독해야하는 경우 :

<presence type='subscribe' from='my.component' to='[email protected]'/> 

사용자는 귀하의 요청에 동의해야합니다 :

<presence type='subscribed' to='my.component' from='[email protected]'/> 

사용자는 다시 구성 요소에 가입 할 수 있습니다

<presence type='subscribe' to='my.component' from='[email protected]'/> 

당신이 선택할 수있는 것들을 선택할 수 있습니다; 할 수있는 가장 쉬운 방법은 단지 그들을 수용하는 것입니다

<presence type='subscribe' from='my.component' to='[email protected]'/> 

당신이 그들의 존재를 필요 때마다, 또는 구성 요소가 시작될 때마다, 그 사용자에게 프로브를 전송해야합니다

<presence type='probe' from='my.component' to='[email protected]'/> 

그러면 각 사용자 자원의 존재를 되돌릴 수 있습니다. 당신이 끝났을 때 알 수있는 방법이 없습니다. 사용자가 오프라인 일 때 작업을 수행하려면 시간 제한 값을 선택하기 만하면된다. 사용자가 어쨌든 오프라인이므로 여분의 대기 시간은 대개 큰 문제가 아닙니다.

위의 사용자의 현재 상태 가입을 수락하면 해당 사용자로부터 프로브를 받게됩니다. 이를 무시하거나 작동 상태를 설명하는 현재 상태 스 D 자로 응답 할 수 있습니다.

+0

업데이트 해 주셔서 감사합니다. – Alfred

+0

XMPP 구성 요소가 사용자를 대신하여 (예 : 가입 된) 스탠자를 보낼 수 있습니까? – Jus12

+0

서버에 따라 다릅니다. 정상적인 구성 요소 프로토콜이 허용하지 않는 보내는 사용자의 서버에서 비즈니스 논리를 통해 구독을 라우팅 할 수 있어야합니다. –

관련 문제