2

Facebookチャットクライアントを開発していて、QXmppを使用してチャットサーバーに接続しています。

QString user = ... // This is the Facebook's user id, not the user's email 
QString passwd = ...
QXmppClient *xmppClient = new QXmppClient();
xmppClient->connectToServer(user + "@chat.facebook.com", passwd);

接続できない「ランダムな」ユーザーはごくわずかです。取得したばかりのログを確認します。

vie 12. oct 21:02:58 2012 RECEIVED <failure xmlns="urn:ietf:params:xml:ns:xmpp-sasl"><not-authorized/></failure>
vie 12. oct 21:03:03 2012 WARNING Authentication failure
4

1 に答える 1

0

問題は、ユーザー名の大文字化でした。Facebook では大文字のユーザー名を使用できますが、XMPP を使用して Facebook チャットに接続するには、ユーザー名を小文字に正規化する必要があります。例えば:

QString user = ... // This is the Facebook's user id, not the user's email 
QString passwd = ...

QString normUser = user.toLower(); // Normalized username

QXmppClient *xmppClient = new QXmppClient();
xmppClient->connectToServer(normUser + "@chat.facebook.com", passwd);
于 2012-10-29T18:05:34.770 に答える