FB 용 간단한 채팅 클라이언트를 개발 중입니다. 나는 이제 "xmpp_login"및 "offline_access"범위로 내 채팅에 로그인 한 사용자의 access_token을 보유한 상태로 진행했습니다. chat.facebook.com에 성공적으로 연결할 수 있으며 api_key 및 access_token을 사용하여 로그인 할 수 있습니다. SASL 인증에는 문제가 없습니다.SASL X-FACEBOOK_PLATFORM을 사용하는 FB 채팅이 작동하지 않습니다.
이제 chat.sendMessage (String) 또는 chat.sendMessage (Message)를 사용하여 메시지를 보내려고하면 스낵 디버거에서 메시지가 전송 된 것으로 나타납니다. 하지만 내 페이스 북 웹 사이트에서 나는 그 사람에게 보낸 메시지를 보지 못했습니다.
hellokVfox0는
이 버려 디버거 전송 열로부터 출력된다. 보낸 사람 주소에 문제가 있습니까? 또는이 메시지 구조로? 내가이 문제를 디버깅하는 방법을 모르기 때문에이 시점에 갇혀있다.
모든 조언, 제안 또는 해결책을 환영합니다.
이
내가 사용하고있는 코드, ConnectionConfiguration config = new ConnectionConfiguration("chat.facebook.com",5222);//ProxyInfo.forHttpProxy(soc.getHostName(),8080, null, null));
config.setSASLAuthenticationEnabled(true);
XMPPConnection connection = new XMPPConnection(config);
XMPPConnection.DEBUG_ENABLED = true;
SASLAuthentication.registerSASLMechanism("X-FACEBOOK-PLATFORM", SASLXFBAuthentication.class);
SASLAuthentication.supportSASLMechanism("X-FACEBOOK-PLATFORM", 0);
connection.connect();
String apiKey ="282973731790200";
String accessToken ="My access token with xmpp_login and offline_access scope";
connection.login(apiKey, accessToken);
Chat newchat = connection.getChatManager().createChat("[email protected]", new MessageListener() {
public void processMessage(Chat chat, Message message) {
// Print out any messages we get back to standard out.
System.out.println("Received message: " + message);
}
});
Message msg = new Message();
msg.addBody("English", text);
msg.addSubject("English", "Test");
msg.setType(Type.chat);
// connection.sendPacket(msg);
newchat.sendMessage(msg);
감사와 안부, KARTHIK 나는이 문제를 해결 한
헤로인 디버거의 메시지가 있었다, <메시지 ID "=에서 ="[email protected] "에 ="7t1b1-4 "- [email protected] COM/Smack_a12852bb_4BEE613208288 "유형 ="채팅 ">
안녕하세요 당신이 메시지가 표시되지 않습니다 말할 때, 다른 사람이 메시지가 표시 않습니다 – Karthik아니요 .. 다른 사람도 메시지를 보지 않으며 예외도 없습니다. 메시지를 인코딩해야합니까 아니면 chat.sendMessage ("hello")와 같은 일반 문자열 일 수 있습니다. 내 코드를 여기에 게시해야합니까? – Karthik