web-dev-qa-db-ja.com

Facebookチャットにtelnetで接続する方法

次の情報を使用して、外部アプリケーションでFacebookチャットを使用できました。

まず、 http://www.facebook.com/your_user/ にアクセスして、Facebookのユーザー名を見つけます。次に、iChatを開き、[iChat]"[設定]を選択して、[アカウント]タブをクリックします。

+(プラス)記号をクリックして、次の設定で新しいアカウントを追加します。

* Account Type is Jabber Account
* Account name is [email protected], and enter

パスワード*ドロップダウン矢印をクリックして、サーバーオプションを表示します。サーバー名としてchat.facebook.comを入力します。 *ポートとして5222と入力し、[完了]をクリックします。

もう一度[完了]をクリックすると、準備が整います。

これを読んだことから、Facebookチャットにtelnetで接続できる可能性があるようです。試しましたが、できませんでした。出来ますか?どうやって?

2
tony_sid

Telnetクライアントを使用してこれを行う実用的な方法はありません。これは、すべてのXMLを自分で入力する必要があるため、非常に非実用的です。ただし、 このスタックオーバーフローの質問 で説明されているように、使用可能なコマンドラインXMPPクライアントがいくつかあります。

Jabberコンソールクライアントのリスト

XMPPプロトコルについて知りたい場合は、 Pidgin をインストールし、Pidgin通知アイコンを右クリックしてメニューからXMPP Consoleを選択してXMPPコンソールを確認することをお勧めします。 。すべての入力通知、ステータスの更新などを含め、クライアントとの間で送受信されるすべてのXMPPメッセージが表示されます。見るのは非常に興味深いです。コンソールからカスタムXMPPステータスコードを送信することもできます。

xmpp console Pidgin

6
nhinkle

(非常に)限られたテストから、それは可能であるように思われます。


実行telnet chat.facebook.com 5222接続してから、 Jabberprotocolspecification に準拠した有効なXMLの送信を続行します。

$ telnet chat.facebook.com 5222
Trying 69.63.181.105...
Connected to chat.facebook.com.
Escape character is '^]'.
<?xml version="1.0">
<stream>
// here I was looking up auth
Connection closed by foreign Host.

サーバーは、非アクティブ状態から約1分以内に接続を閉じるため、プロトコルをアドホックで検索することは実用的ではないことに注意してください。または、生のJabberに関連するものは何でも、XMLを完璧に入力するのはそれほど簡単ではなく、不正な形式のXMLを送信すると、接続はすぐに閉じます。

$ telnet chat.facebook.com 5222
Trying 69.63.181.105...
Connected to chat.facebook.com.
Escape character is '^]'.
<stream>
<?xml version="1.0"?><stream:stream id="5D13A2D5" from="chat.facebook.com" xmlns="Jabber:client" xmlns:stream="http://etherx.Jabber.org/streams" xml:lang="en"><stream:error><invalid-namespace xmlns="urn:ietf:params:xml:ns:xmpp-streams"/></stream:error></stream:stream>Connection closed by foreign Host

チャット中に苦しみたい場合は、 コマンドラインクライアント の方が適している可能性があります。または、プロトコルに関する場合は、最小限のクライアントを自分で作成して、プレッシャーの下でXMLを入力する必要がないようにします-- Telnetの違いに悩まされることはありません

2
Daniel Beck

Telnetの使用は、おそらく期待どおりに機能しません。おそらく、「rawソケット接続」を意味します。 Jabberプロトコルを本当によく知っている場合は、PuTTYを使用してそれを行うことができます。

  • PuTTY -raw chat.facebook.com 5222

最善の方法は、Jabberクライアントを取得し、それを使用してホスト名chat.facebook.comに接続することです。

1