6

Я привык редактировать около 30% моих сообщений в Skype. Кроме того, я ожидаю, что мои сообщения будут доставлены в конце независимо от того, находится ли узел в сети сейчас или нет (то есть, в конце концов, сообщение придет, когда мы оба будем в сети).

Я еще не видел эти функции в Jabber, хотя.

Какие клиенты XMPP (или какие расширения протокола) я должен использовать для поддержки удобного чата?

На самом деле хочется, чтобы чат больше походил на вики (добавление ссылок, также редактирование сообщений коллег, история изменений, некоторое форматирование), но просто использование программного обеспечения вики - это не так (без нормальной истории контактов, без обычных уведомлений, без «использования» набрав ... ").

2 ответа2

7

Кроме того, я ожидаю, что мои сообщения будут доставлены в конце независимо от того, находится ли узел в сети сейчас или нет (то есть, в конце концов, сообщение придет, когда мы оба будем в сети).

Серверы / клиенты XMPP обычно поддерживают отправку сообщений в автономные контакты. Эти XEP могут быть актуальны (может быть, есть и другие):


Я привык редактировать около 30% моих сообщений в Skype.

Я не знаю, как это реализовано в Skype, но есть XEP для редактирования последнего отправленного сообщения.

XEP-0308: исправление последнего сообщения:

При отправке сообщения люди часто вводят опечатки и отправляют последующее сообщение, чтобы исправить их. Эта спецификация позволяет отправляющему клиенту пометить второе сообщение как исправляющее первое.

Я думаю, что OneTeam реализовал эту функцию (но я не уверен, никогда не использовал этот клиент). Могут быть и другие клиенты.

/edit: как отметил Zash, Swift также поддерживает это.

2

В 2009 году у меня был довольно спорный разговор об этом на FOSDEM в XMPP DevRoom.

Суть в том, что даже если ваш клиент поддерживает редактирование сообщений, вы не можете дать никаких гарантий (если только вы не строите внутреннюю сеть), что принимающая сторона будет поддерживать его.

Вот хитрость со скайпом: у Skype был только один, единственный клиент от одного единственного поставщика, называемый Skype, до самого недавнего времени, когда они начали распространять SkypeSDK, который позволял производителям автомобилей, производителям телевизоров и т.д. Создавать клиентов Skype. Тем не менее, даже эти клиенты основаны на Skype SDK, и поэтому большинство из них должно поддерживать это редактирование.

С XMPP, если вы используете общедоступную инфраструктуру Jabber, вы не можете быть уверены, какие серверы или клиенты используют ваши партнеры, и вы можете быть уверены только в одном: они поддерживают RFC 3920 и 3921. (Да, я знаю, что это старые стандарты: вы не можете быть уверены, что они поддерживают новые).

Было бы легко сказать, что большинство ваших контактов будут контактами GTalk, использующими GMail, поэтому то, что не поддерживается GTalk в GMail, практически не существует в мире Jabber, в том числе редактирование сообщений. Или, вы могли бы сказать, что есть некоторые пользователи Pidgin / Telepathy, с которыми вы много общаетесь, но, возможно, даже отправка файлов для вас по-прежнему за пределами допустимого.

В интрасети ситуация отличается: вы можете установить клиент, который поддерживает эту функцию (Swift упоминался в комментариях к предыдущему ответу), но даже в этом случае вы можете быть уверены только во внутренней сети связи.

Оказывается, иногда лучше создать сервис IM с нуля, чем использовать XMPP.

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