Кому должны принадлежать сообщения пользователей мессенджера: Опыт Kato.im

imageНе так давно рунет всколыхнула новость о том, что Facebook меняет свою политику использования данных и начнет передавать информацию о пользователях третьим лицам без специального разрешения этих самых пользователей. Несмотря на то, что новость была беззастенчиво раздута журналистами, и на самом деле правила соцсети не особенно изменились, пользователей не на шутку взволновал вопрос приватности и сохранности их данных.

Поскольку наш проект Kato.im — это мессенджер для бизнес-коммуникаций, логично было бы рассказать о том, как мы храним данные, включая историю посланных пользователем сообщений, а также кто и в какой ситуации может получить доступ к этой информации.

Кому принадлежат сообщенияОтвет на этот вопрос зависит от того, какая версия продукта используется — коммерческая или бесплатная.Рассмотрим оба случая подробнее.

Kato Enterprise Парадоксальным образом, ситуация с доступом к данным описывается очень просто в более сложной платной версии продукта: вся информация принадлежит тому, кто платит за сервис.image

Каждый экземпляр Kato Enterprise (платная версия на момент написания материала находится на этапе бета-тестирования) является замкнутой «вселенной», состоящей из команд сотрудников, комнат, участвующих в них пользователей, а также установок, определяющих правила функционирования данной «вселенной». Сущности (пользователи, их права доступа, отправленные сообщения, правила видимости и т.д.) могут взаимодействовать между собой лишь внутри этой «вселенной». Все диалоги в режиме 1:1 внутри этой «вселенной» принадлежат компании, которая платит за Kato Enterprise — точно так же как этой компании принадлежат все документы, созданные сотрудниками, включая отправленную ими электронную почту (это тоже своего рода документы).

Kato Teams Случай бесплатной версии продукта, называемой Kato Teams, проще всего проиллюстрировать на примере.Петя и Оля владеют консалтинговой компанией и используют для коммуникаций бесплатную версию Kato, Kato Teams. Крупный заказчик их компании — ООО «СуперТехнологии» — также пользуется Kato Teams. Когда этот клиент пригласит Петю и Олю в свою команду в сервисе Kato, консультанты смогут общаться еще и с сотрудниками этой компании. Для коммуникаций с клиентом и личного общения в режиме 1:1 им не придется переключать контекст, как видно из следующего рисунка.

image

Таким образом, Петя и Оля смогут продолжить общение между собой в режиме 1:1, а также также обмениваться сообщениями в комнатах компании ООО «СуперТехнологии». История в комнате 1:1 будет принадлежать каждому из собеседников (как письмо электронной почты), а в комнатах с бóльшим числом участников — команде, которой принадлежат комнаты. Несмотря на возможность подключения к нескольким командам, личный чат в режиме 1:1 всегда один и существует независимо, полностью находясь под контролем собеседников. Еще раз подчеркнем, что в версии Kato Enterprise компания, оплачивающая доступ к сервису, сохраняет контроль даже в отношении диалогов между членами команды в режиме 1:1.

Когда срок действия договора с заказчиком истечет, Петя и Оля будут удалены из команды ООО «СуперТехнологии» и не смогут видеть, что происходит в комнатах с участием сотрудников организации, но сохранят контроль над комнатой 1:1. Если впоследствии Петя и Оля решат закрыть свою компанию и удалить команду из Kato, то они более не будут соединены внутри сервиса и пропадут из списка контактов друг друга в Kato.

В том случае, если позже Петя устроится на работу в компанию, которая использует Kato Teams, и эта организация пригласит еще и Олю, то история их сообщений в режиме 1:1 восстановится с того момента, на котором она прервалась в момент удаления команды консалтинговой фирмы — «непрерывность» истории личного общения является одним из отличий Kato от других мессенджеров.

Отредактированные сообщения В Kato редактировать сообщение можно только при выполнении двух условий: Это сообщение является последним из отправленных пользователем в данной конкретной комнате; Кроме того, оно было отправлено менее 120 секунд назад (то есть прошло менее двух минут с момента его записи в базу данных). Сохраняется только последняя правка — в Kato нет истории изменений сообщения и тот факт, что оно было отредактировано, никак не отражается в базе данных. В системе Kato отредактированные сообщения выделяются значком карандаша, который пропадает, если комнату закрыть и открыть заново.image

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

Удаленные сообщения В Kato нельзя физически удалить сообщение из базы данных. Администраторы могут «скрывать» сообщения, помечая их, как «удаленные» (но не в комнатах 1:1), однако это лишь скрывает текст «удаленных» сообщений от не-администраторов. Само сообщение сохраняется в базе, и администратор может отменить флаг псевдо-удаления в любой момент.Физическое удаление сообщений отсутствует в сервисе по трем причинам:

Удаление сообщения из базы данных не означает, что его не скопировали другим способом, например просто сделав снимок экрана. Если сообщение было удалено после резервного копирования базы данных, то его иногда все равно можно восстановить из копии базы данных. «Удаленное» сообщение могло быть сохранено в файле в результате исполнения функции «Download History». Off the record Удаления сообщений из базы данных в Kato нет, однако существует специальный режим, включение которого предотвращает сохранение сообщений в базе данных. Он называется Off the record и активируется в меню: image

После включения этого режима сообщения перестают сохраняться в базе данных — если комнату закрыть и открыть заново, то все сообщения, отправленные в режиме Off the record, пропадут. Посланные в этом режиме сообщения помечаются красной вертикальной полосой слева:

image

Если режим Off the record отключить, то все последующие сообщения в данной комнате вновь будут записываться в базу данных.

В случае, когда наличие возможности отключения записи истории в базу нежелательно, администраторы команды могут запретить режим Off-the-record.

Заключение Главная причина того, что продукт Kato Teams стал бесплатным, заключается в том, что если брать оплату за каждую команду, подключенную к сервису (в большой компании, как правило, команд создается много), то организация вынуждена платить за одного и того же человека несколько раз (так как некоторые сотрудники входят в несколько команд Kato одновременно).В платной версии (Kato Enterprise) компании оплачивают определенное количество лицензий, соответствующих числу сотрудников компании, использующих Kato. В дальнейшем работники могут создавать любое количество команд и приглашать в них как коллег, так и внешних подрядчиков. При этом вся история в комнатах и в личных чатах в режиме 1:1 принадлежит компании, оплатившей доступ к сервису.

Бесплатная версия (Teams Teams) напротив, позволяет пользователям сохранить гибкость и работать с одним и тем же «удостоверением личности» в разных компаниях — эта возможность особенно востребована специалистами в области консалтинга и работниками разнообразных агентств.

В продолжение темы, в следующем материале мы расскажем о том, как в Kato организована поддержка очень крупных команд.

© Habrahabr.ru