http://xmppjs.prosody.im/을 사용하여 xmpp 구성 요소를 코딩하고 있습니다. 나는 사용자가 온라인 상태 인 경우에만 jid에 메시지를 보내려고합니다. 이를 달성하는 가장 빠르고 효율적인 방법은 무엇입니까?xmpp 구성 요소 : jid가 온라인 일 경우에만 메시지를 보냅니다.
예를 들어 사용자가 오프라인 일 때 전자 메일을 보낼 수 있도록이 파일을 검색하고 싶습니다.
http://xmppjs.prosody.im/을 사용하여 xmpp 구성 요소를 코딩하고 있습니다. 나는 사용자가 온라인 상태 인 경우에만 jid에 메시지를 보내려고합니다. 이를 달성하는 가장 빠르고 효율적인 방법은 무엇입니까?xmpp 구성 요소 : jid가 온라인 일 경우에만 메시지를 보냅니다.
예를 들어 사용자가 오프라인 일 때 전자 메일을 보낼 수 있도록이 파일을 검색하고 싶습니다.
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 자로 응답 할 수 있습니다.
업데이트 해 주셔서 감사합니다. – Alfred
XMPP 구성 요소가 사용자를 대신하여 (예 : 가입 된) 스탠자를 보낼 수 있습니까? – Jus12
서버에 따라 다릅니다. 정상적인 구성 요소 프로토콜이 허용하지 않는 보내는 사용자의 서버에서 비즈니스 논리를 통해 구독을 라우팅 할 수 있어야합니다. –