예전에~ 업무차 만들어놨던 Openfire 플러그인이다.
XMPP 기반에 Openfire 에서 유/무선 메신저 시스템을 구축하기 위해 APNS를 당연하게 사용해야하는데, 포럼을 아무리 뒤져봐도 만들어논게 없어서 자바책 펴가면서 만들었다 ㅠㅠㅠㅠㅠㅠ
로그인 이후에 <iq> stanza를 통해 아이폰의 UDID를 지정해두면, 해당 jid에게 보내진 message 들이 APNS 서버를 통해 푸쉬메시지를 받을 수 있다.
플러그인은 별도로 Openfire 내부에 테이블을 만들어서 jid와 udid 컬럼을 두고 apns를 보낼 디바이스를 관리한다.
https://github.com/myriky/XMPP2APNS
XMPP 기반에 Openfire 에서 유/무선 메신저 시스템을 구축하기 위해 APNS를 당연하게 사용해야하는데, 포럼을 아무리 뒤져봐도 만들어논게 없어서 자바책 펴가면서 만들었다 ㅠㅠㅠㅠㅠㅠ
로그인 이후에 <iq> stanza를 통해 아이폰의 UDID를 지정해두면, 해당 jid에게 보내진 message 들이 APNS 서버를 통해 푸쉬메시지를 받을 수 있다.
플러그인은 별도로 Openfire 내부에 테이블을 만들어서 jid와 udid 컬럼을 두고 apns를 보낼 디바이스를 관리한다.
https://github.com/myriky/XMPP2APNS
XMPP2APNS
Openfire(WildFire) 에서 발생하는 Message 태그를 APNS(Apple Push Notification Server)으로 포워딩하는 플러그인입니다.
해당 타겟(targetJID)으로 향하는 모든 메시지 스탠자를 검사하여 OpenFire DB안에 별도로 생성된 ofAPNS 테이블을 검사하여, 해당 사용자의 UDID를 통해 APNS로 푸쉬 메시지 발송을 요청합니다.
설치방법
- Openfire Admin Console ( http://serverip:9090 ) 에 접속한 다음, Plugins 페이지에서 위에 있는 파일을 업로드 하면 됩니다.
플러그인이 설치되자마자, 데이터베이스에 ofAPNS 라는 테이블이 자동으로 생성됩니다.
그리고, APNS 인증서를 다운로드 받은 후 /usr/local/openfire/ 에 올려두시면 됩니다.
요청방법
디바이스 토큰 등록하기
<iq type="set" to="OPENFIRE_SERVER" id="apns68057d6a">
<query xmlns="urn:xmpp:apns">
<token>XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX</token>
</query>
</iq>
리턴 값
<iq type="result" id="OPENFIRE_SERVER" from="210.205.58.23" to="user@OPENFIRE_SERVER/68057d6a">
<query xmlns="urn:xmpp:apns">
<token>XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX</token>
</query>
</iq>
디바이스 토큰 가져오기
<iq type="get" to="OPENFIRE_SERVER" id="apns68057d6a">
<query xmlns="urn:xmpp:apns"/>
</iq>
리턴 값
<iq type="result" id="apns68057d6a" from="OPENFIRE_SERVER" to="user@OPENFIRE_SERVER/68057d6a">
<query xmlns="urn:xmpp:apns">
<token>XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX</token>
</query>
</iq>
