2012-05-02 2 views
0

현재 Android 사용자와의 통신에 XMPP이 사용되는 응용 프로그램에서 작업 중입니다. 이제 Facebook 또는 전화 연락처 목록에서 친구를 가져 오는 기능을 추가해야합니다.
누구나 어떻게 수행 할 수 있는지 알고 있습니까 (즉, 모든 연락처를 사용할 수있는 경우 내 애플리케이션을 사용하는 연락처와 해당 JID를 찾는 방법).Xmpp의 이메일 (또는 기타 정보)에서 연락처 찾기

모두가 페이스 북에서 사용하는 것과 동일한 이메일을 사용하여 계정을 등록하고 자신의 JID 대신 전자 메일을 통해 친구를 추가 할 수 있지만 어떻게 할 수 있는지는 알 수 있지만 어리숙한 가정 일뿐입니다. 내가 아는 한 사용자는 이메일 만 추가 할 수 없습니다.

나는 asmackOpenfire 서버를 사용하고 있습니다.

답변

1

전자 메일 주소에서 XMPP 주소를 추론하는 표준 방법은 없습니다.

일부 서비스에서는 전자 메일 및 XMPP에 동일한 주소 (예 : gmail.com)를 사용할 수 있습니다. 주어진 도메인의 XMPP 지원 여부를 확인하는 한 가지 방법은 SRV records의 존재 여부를 확인하는 것입니다. 해킹 방법은 포트 5222/5269에서 수신하는지 여부를 확인하는 것입니다.

이메일 주소를 알고 이메일 호스트도 XMPP를 제공한다는 것을 알고 있다고하더라도 [email protected]은 이메일과 XMPP에 대해 동일한 사용자임을 보장하지 않습니다. 왜 그렇게되지 않을지 내게 묻지 마라.하지만 그 가정을 할 수는 없다.

응용 프로그램의 다른 사용자 만 확인하면됩니다. 자신의 데이터베이스 매핑 이메일 주소를 JID에 저장할 수 있습니다. 나는 이것이 이상적이지 않다는 것에 당신에게 동의한다 - 그러나 그것이 바로이 일을하는 대부분의 서비스들이다. 그들은 당신의 이메일 주소보다 더 많은 데이터를 가지고있는 것을 제외하고 페이스 북을 포함해서 ...).

+0

감사합니다. 내 질문에 대한 답변입니다. 이제 데이터베이스 부분을 수행하는 방법을 알아야합니다. 잘하면 Openfire가 사용하는 데이터베이스를 재사용 할 수 있으므로 사본이 필요하지 않습니다. – Jave