Как подключиться к чату Facebook через Telnet

Как подключиться к чату Facebook через Telnet

Мне удалось использовать чат Facebook с внешним приложением, используя следующую информацию:

Сначала найдите свое имя пользователя Facebook, перейдя по ссылке http://www.facebook.com/your_user/. Затем откройте iChat, выберите iChat » Настройки и щелкните вкладку Учетные записи.

Нажмите на знак + (плюс), чтобы добавить новую учетную запись со следующими настройками:

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

ваш пароль * Щелкните стрелку раскрывающегося списка, чтобы открыть параметры сервера. Введите chat.facebook.com в качестве имени сервера. * Введите 5222 в качестве порта и щелкните Готово.

Нажмите «Готово» еще раз, и все готово.

Из прочитанного следует, что возможно подключиться через telnet к чату facebook. Я пробовал, но не смог. Возможно ли это? Как?

решение1

Здесь нетпрактичныйспособ сделать это с помощью клиента telnet, так как вам придется вводить весь XML самостоятельно, что невероятно непрактично. Однако есть несколько доступных клиентов командной строки XMPP, как обсуждалось вэтот вопрос переполнения стека.

Список клиентов Jabber Console

Если вам интересно узнать о протоколе XMPP, предлагаю вам установитьПиджини взгляните на консоль XMPP, щелкнув правой кнопкой мыши по значку уведомления Pidgin и выбрав XMPP Consoleиз меню. Будут показаны все сообщения XMPP, отправленные вашему клиенту и полученные от него, включая каждое уведомление о наборе текста, обновление статуса и т. д. Это очень интересно посмотреть, и вы даже можете попробовать свои силы в отправке пользовательских кодов статуса XMPP из консоли.

xmpp консольный пиджин

решение2

Судя по (очень) ограниченному тестированию, это кажется возможным.


Запустите telnet chat.facebook.com 5222для подключения, затем продолжите отправку допустимого 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.

Имейте в виду, что сервер закрывает ваше соединение примерно через минуту бездействия, поэтому поиск протокола ad hoc непрактичен. Или что-либо, связанное с сырым 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.

решение3

Использование telnet, вероятно, не будет работать так хорошо, как вам бы хотелось, — вы, вероятно, имеете в виду «соединение через сырой сокет». Если вы действительно очень хорошо знаете протокол Jabber, вы можете сделать это с помощью PuTTY:

  • замазка -сырой чат.facebook.com 5222

Лучше всего просто установить клиент Jabber и подключиться с его помощью к хосту chat.facebook.com.

Связанный контент