19

Я могу отправлять электронные письма из GMail в YahooMail или ProtonMail и т.д. Я могу отправлять SMS-сообщения на любой номер мобильного телефона, независимо от того, принадлежит ли номер Vodafone или любым другим телекоммуникационным провайдерам.

Однако я не могу отправлять мгновенные сообщения между WhatsApp и Google Hangouts, Telegram, WeChat и т.д.

Есть ли технологический барьер или проблемы безопасности, связанные с этим недостатком функциональности? Я заметил, что многие из них используют свои собственные протоколы, но разве нельзя создать общий протокол, такой как POP3 или IMAP, для обмена мгновенными сообщениями? Текущее состояние обмена мгновенными сообщениями выглядит просто глупо: я не могу получить мгновенное сообщение от пользователя WhatsApp на свою учетную запись Hangouts.

Обновление: даже XKCD имеет что-то на нем: https://xkcd.com/1810/

1 ответ1

32

Существует общий протокол, несколько на самом деле - популярный один будучи XMPP (он же Jabber); другой - ПРОСТОЙ, вариант протокола SIP, используемый для VoIP. (Некоторые из самых старых из них, такие как Talk, Zephyr или Gale - даже IRC - также были созданы с учетом междоменной связи.) Скорее коммерческие службы не хотят использовать общий протокол, как по техническим, так и по коммерческим причинам.

Вот несколько исторических примеров использования Jabber:

  • Изначально Google Talk (предварительные видеовстречи) был стандартным сервисом XMPP и мог подключаться к другим доменам с помощью XMPP - они даже представили расширение voice/video-over-XMPP (Jingle).
  • Первоначально Facebook Chat был XMPP-совместимым сервисом, хотя и не поддерживал межсерверную федерацию (предположительно, чтобы большему количеству людей приходилось регистрировать учетную запись Facebook).
  • Некоторое время даже AIM AOL пытался поддерживать XMPP вместе с их (проприетарным, но частично открытым) протоколом OSCAR.
  • Сигнал основан на XMPP, но у них есть сообщение в блоге о решении не поддерживать эту функцию. Основным аргументом Signal является то, что федеративный протокол становится очень трудно изменить, кроме добавления небольших функций здесь и там. (Что ... действительно верно для SMTP и DNS, например.)

Если бы мне пришлось угадывать, потому что это не стало "убийственной функцией" при рождении Интернета (в конечном итоге вместо этого "решалось" на стороне клиента, используя многопротокольные приложения чата, такие как Trillian, Miranda или Gaim/Pidgin) федеративный обмен мгновенными сообщениями упустил свой шанс стать основным интернет-протоколом и вместо этого считается просто еще одной коммерчески нежизнеспособной функцией, о которой очень маленький процент пользователей хотел бы попросить.

(IRC современен с SMTP и в свое время имел огромную федеративную сеть, так почему же он не стал «протоколом»? Что ж, его межсерверные протоколы совершенно не подходят для ненадежных сред, поскольку они формируют строго синхронизированную систему, а не свободную сетку независимых доменов. Это может быть сделано для работы исключительно с личными сообщениями, но IRC фокусируется на каналах, и это не очень хорошо.)

Наконец-то ... спам. Я помню, как читал некоторые темы списков рассылки операторами XMPP-серверов, описывая Google Talk как основной источник всех спам-сообщений с огромным отрывом - они не очень хорошо справлялись с сообщениями о злоупотреблениях на стороне отправителя, и они были такими крупный провайдер, которого вы не можете позволить себе напрямую заблокировать, но из-за формата сообщений чата и электронной почты (короткие, прибывающие по частям, очень мало метаданных), по-видимому, также невозможно прилично отфильтровать его на стороне получателя.

Вы, конечно, можете установить сервер XMPP (ejabberd, Prosody) так же, как если бы вы установили сервер электронной почты, и быть доступным как Nav@example.com через любой другой сервер XMPP. XMPP-клиенты доступны для многих операционных систем, от Windows до Android. (Хотя у вас будут некоторые трудности с предоставлением push-уведомлений, и если вы этого не сделаете, это разрядит ваш аккумулятор.)

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .