2013-12-11 4 views
2

Xfp 용 서버로 Openfire를 사용하고 있습니다. 내가 직면하고있는 문제는 서버 설정을 "유휴 상태의 사용자가 아닌 사용자"로 변경했지만 사용자가 몇 분마다 쫓겨나고 있다는 것입니다.자바 스크립트로 XMPP 서버에 핑 (ping) 보내기

이 문제에 대해 조사한 결과, 많은 사람들이 동일한 문제에 직면 해 있으며 서버에 계속 핑을 보내 문제를 해결할 수 있음을 발견했습니다.

그리고 난 다음이다 XMPP 핑 (ping),의 연을 발견

<iq from='capulet.lit' to='[email protected]/balcony' id='s2c1' type='get'> 
    <ping xmlns='urn:xmpp:ping'/> 
</iq> 

하지만 제대로 자바 스크립트로 변환 할 수 아니에요.

나는 다음하지만 여전히

setInterval(function(){ 
      var message = $msg({to: [server hostname] , 
            from: [user jid], 
            "type": "get"}) 
            .c('query', {xmlns: "urn:xmpp:ping"}); 
        connection.sendIQ(message); 
},50000); 

내가 크게 도움을 부탁드립니다 작동하지 않는 시도했다.

감사합니다.

+0

스탠자를 정확하게 작성하고 보내려면 어떤 언어를 사용하고 있습니까? PHP 또는 Javascript? 또는 둘 다의 조합입니까? 또한 메시지 스탠자를 작성하지만 마치 IQ 스탠자처럼 보냅니다. –

+0

그것은 자바 스크립트에, 나는 다른 장소에서 그것을 사용하고 있기 때문에 실수로 PHP를 썼습니다. 내 질문을 다시 편집했습니다. 감사합니다 – firewall

+0

Strophe.js를 사용하고 있습니까? –

답변

3

IQ 대신 메시지 스 D자를 빌드 중입니다. 서버를 핑 (ping)하려면 IQ 스 D자를 작성해야합니다. 스탠자 내부에서 작성한 하위 요소도 잘못되었습니다. 요소 이름은 query 대신 ping이어야합니다.

connection.sendIQ($iq({to: server, from: jid, type: "get"}).c('ping', {xmlns: "urn:xmpp:ping"})); 
+0

Kermal에게 감사드립니다! 나는 그것을 지금 시도 할 것이다 – firewall

+0

''get ")''get"})' – AhmadWabbi

+0

@AhmadWabbi가 고쳐졌다. 고마워. –