IM

Материал из Etersoft wiki
Перейти к: навигация, поиск

Требования к средству общения

Для общения через интернет необходимо средство, обладающее, в частности, следующими свойствами:

  • клиенты для мобильных платформ (Android/iOS) и для десктопа (Windows/Linux/Mac)
  • шифрование хранимых сообщений (чтобы доступ к локальной переписке мог быть получен только после авторизации)
  • шифрование передачи (сообщение должно шифроваться на отправителе и расшифровываться на получателе)
  • контроль подключенных клиентов (должна быть регистрация устройств/программ, используемых для общения через аккаунт)

Требования, снижающие риски:

  • свободный исходный код

Дополнительные желаемые возможности:

  • голосовое общение
  • видеообщение
  • передача файлов

Популярные решения

До недавнего времени были популярны способы взаимодействия двух видов:

1. Соцсети/Skype/Jabber

В них регистрация пользователя через логин/пароль, и далее он может с любых устройств подключаться и общаться. При этом на остальные устройства переписка тоже попадёт, причём только ВК позволяет посмотреть, какие устройства подключены. Чтобы написать человеку, нужно знать его логин.

2. WhatsApp/Viber/Telegram

В них идентификация личности производится через привязку к телефонному номеру (предполагается, что он неотделим от личности). После установки приложения на смартфон можно узнать, у кого ещё есть такое же приложение и общаться с ними. Чтобы написать человеку, нужно знать его номер телефона (вроде бы в Telegram появился nickname).

На данный момент у Viber/Telgram есть нормальные десктопные клиенты. У WhatsApp/Viber есть поддержка голосового общения.


Подходящие решения

Подходящих решения есть два:

  • TOX (протокол TOX)
  • Telegram (протокол MTProto)

Telegram

Есть клиент для мобильного в официальных репозиториях. Бинарные дистрибутивы клиентов выложены, сборка пакетов в процессе.

TOX

Клиент (Anton) для Android доступен через отдельный репозиторий для FDroid. Клиент для Linux собран для Fedora/Ubuntu (популярный — qtox), сборка пакетов в процессе.

Декларируется поддержка голосового общения. Отсутствует привязка к номеру.

Идёт тестирование.

Универсальный протокол

Предыстория

WhatsApp: Отдельная программа. Идентификация через номер телефона — он уникален. Закрытый протокол, всем нужно поставить их программу, и общаться именно через неё. Возможность отправки сообщений, видео, аудио, фото.

Xabber: Отдельная программа. Агрегатор мессенджеров. При отправке нужно выбирать куда отправлять сообщения.

IM+. Недавно из него исключили Skype и он стал мало интересен, разве что как агрегатор социальных сетей.

Универсальный

Универсальный мессенджер: когда ты пишешь _человеку_, а ему приходит через тот мессенджер, которым он в основном пользуется.

Что предлагается: Программа работает с обычными сообщениями (как Hangouts). Отправка производится на сервер, который берёт на себя заботу по доставке сообщения клиенту по одному из доступных протоколов (VK, FB, Jabber, Hangouts, WhatsApp, Skype, Viber, Telegram и пр.) Клиент может выбрать, что ему предпочтительнее (или это само определяется?). В случае невозможности доставки, отправляется по SMS, с приглашением подключиться (поставить программу и себе, или хотя бы где-то зарегистрироваться). На самом деле сообщение должно быть зашифровано при отправке, поэтому вариант с сервером не годится, как позволяющий перехват (требуется доверие к серверу).

Ссылки

  • UppTalk — бесплатные звонки и SMS. От клиента выходит через данные, а потом приземляется обычными SMS и вызовами. На самом деле кредитная система, деньги в которой возобновляются через просмотр рекламы.