Рубрика «Системы обмена сообщениями»

Только что в канале Павла Дурова появилась новость о том, что теперь в любом личном чате мессенджера, можно бесследно удалять любые сообщения. И не как раньше, только отправленные лично вами и только в течение двух суток — но и чужие тоже, без всяких ограничений.

В личном чате Telegram можно удалять любые сообщения — даже чужие - 1
Читать полностью »

Google Docs — любимый чат у школьников - 1

Как известно, текстовый редактор Google Docs допускает многопользовательскую работу, то есть несколько человек могут редактировать один документ. В том числе одновременно. Может быть кто-то не задумывался, но таким образом можно отправлять друг другу сообщения в реальном режиме времени. Если несколько человек одновременно пишут в один документ, то получается что-то вроде чата. Кроме того, есть штатный чат. Удобно также чатиться в комментариях, потому что их можно быстро удалить (принять).

Неудивительно, что Google Docs стал популярным у американских школьников: «По мере того как в средней и старшей школе у учеников всё больше ноутбуков, учителя зачастую предлагают используют Google Docs для совместных упражнений — и помогают студентам следовать плану урока. Однако сами школьники используют текстовый редактор для организации разговоров за спиной учителей», — пишет The Atlantic.
Читать полностью »

Микросервисы на php и swoole для конвертации телеграм каналов в RSS - 1

В предыдущем посте я рассказал про то, как настроить и использовать php телеграм клиент madelineProto для парсинга постов. Но при использовании библиотеки я столкнулся с несколькими недостатками:

  • Долгая обработка запросов из-за авторизации телеграм клиента;
  • Неудобная настройка;
  • Проблемы с отдачей изображений из постов.

Поэтому решил создать два микросервиса на php для парсинга телеграм каналов, используя асинхронное расширение swoole. Теперь эти пакеты упрощают и ускоряют работу с telegram api (не путать с bot api) в нескольких моих проектах. Хочется поделится ими и услышать мнение других разработчиков.

Под катом расскажу об архитектуре, использовании разных областей видимости в swoole server и устранении последствий ошибок в сторонних библиотеках и внешних api. Ссылки на репозитории с исходным кодом и на тестовый сервер — в конце поста.
Читать полностью »

Привет. Я автор нескольких популярных ботов для администрирования телеграм групп: @daysandbox, @watchdog_robot и других. Каждый день в группе поддержки и в личных сообщениях я вижу один и тот же вопрос: как мне защититься от спам-ботов, добавляемых в группу. Обычно ещё уточняют, что это арабские спам-боты. Люди пытаются найти анти-спам бота, который будет удалять ссылки, удалять сообщения с арабскими символами, удалять пользователей с арабскими символами в именах и всё в таком духе. Но это всё следствия, а причина во многих случаях одна и та же и её легко поправить. Причина простая, но не очевидная.

Читать полностью »

Митинг против изоляции рунета - 1


Осенью 17 года произошла не только Великая Октябрьская Социалистическая революция. Осенью 2017 году началась государственная компания травли онлайн-мессенджера — Telegam. Сначала от создателей мессенджера потребовали ключи, которые позволят расшифровывать всю переписку его пользователей, за отказ — подали на него в суд, а весной 18 года началась самая масштабная по своей нелепости и неэффективности — «Эпическая Волна Блокировок». В процессе этих блокировок произошли крупномасштабные сбои в работе огромного количества онлайн-сервисов, от небольших личных проектов, до банковских служб. РКН это не остановило, и по сей день, вопреки всем законам, конституции и здравому смыслу, остаются заблокированы миллионы IP-адресов.

Вчера в канале Telegram появилось сообщение об очередном согласованном митинге, против ограничений свободы в интернет, который будет проходить в нескольких городах.
Читать полностью »

На Хабре, да и не только, про ботов рассказано уже так много, что даже слишком. Но заинтересовавшись пару недель назад данной темой, найти нормальный материал у меня так и не вышло: все статьи были либо для совсем чайников и ограничивались отправкой сообщения в ответ на сообщение пользователя, либо были неактуальны. Это и подтолкнуло меня на написание статьи, которая бы объяснила такому же новичку, как я, как написать и запустить более-менее осмысленного бота (с возможностью расширения функциональности).

Читать полностью »

Изжила ли себя электронная почта? Каким мессенджером стоит пользоваться, чтобы не попасть в затруднительную ситуацию и не потерять связь с друзьями? Можно ли использовать старые технологии на новый лад?

Некоторые гениальные идеи настолько просты, что впоследствии всегда возникает недоумение, почему же что-то такое очевидное не вошло в обиход раньше? Ну а если этого не случилось до сих пор, то сейчас — в эпоху новой волны цензуры, правительственных блокировок интернет-ресурсов и постоянной угрозы слежки — наверное самое время вновь переосмыслить подход к электронной переписке…

Представляю вашему вниманию проект DeltaChat

Delta Chat — децентрализованный мессенджер поверх электронной почты - 1

Delta Chat — свободный децентрализованный мессенджер для Android, iOS, Linux, Mac, функционирующий поверх древнейшего стека протоколов E-mail. Версия для Windows находится в разработке.
Читать полностью »

Привет!

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

Краткая предыстория. Как вы уже знаете, наш мессенджер функционирует на собственном блокчейне, и в нем реализованы переводы нескольких криптовалют в чатах. Добавлю: связи между кошельками публичны. Поэтому факт переписки и перевода токенов доступен и подтвержден в блокчейне. А ведь иногда именно факт общения (или перевода средств) может быть компрометирующим! Все ведь помнят «Трех мушкетеров» и подвески королевы, да?

Как замести следы в блокчейне? Наш концепт миксера для транзакций - 1

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

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

Читать полностью »

На кого и для чего будут «стучать» мессенджеры - 1

Итак, Правительством РФ установлен порядок идентификации пользователей мессенджеров. Так, для подтверждения абонентского номера пользователю мессенджера будет предложено совершить действия с использованием этого номера, позволяющие достоверно установить, что он использует сообщенный абонентский номер при регистрации в мессенджере. В случае отсутствия номера в базе оператора или неполучения ответа от него идентификация считается не пройдённо, и мессенджер отказывается от предоставления услуг пользователю. Данный порядок начнет действовать с 06 мая 2019 г.

Таким образом один из столпов мессенджеров – анонимность, уходит в прошлое. Для чего это делается?
Читать полностью »

Результат пошуку зображень за запитом "голубиная почта"

Небольшой вопрос/ответ:

Для кого это? Людям, которые мало или вообще не сталкивались с распределенными системами, и которым интересно увидеть как они могут строится, какие существуют паттерны и решения.

Зачем это? Самому стало интересно что и как. Черпал информацию с разных источников, решил выложить в концентрированном виде, ибо в свое время сам хотел бы увидеть подобную работу. По сути это текстовое изложение моих личных метаний и раздумий. Также, наверняка будет много исправлений в комментариях от знающих людей, отчасти это и есть целью написания всего этого именно в виде статьи.

Постановка задачи

Как сделать чат? Это должно быть тривиальной задачей, наверное каждый второй бекендер пилил свой собственный, так же как игровые разработчики делают свои тетрисы/змейки и т. п. Я взялся за такой, но чтоб было интереснее он должен быть готов к захвату мира, чтоб мог выдерживать сотниллиарды активных пользователей и вообще был неимоверно крут. Из этого исходит ясная потребность в распределенной архитектуре, потому что вместить все воображаемое количество клиентов на одной машине — пока нереально с нынешними мощностями. Заместо того чтоб просто сидеть и ждать на появление квантовых компьютеров я решительно взялся за изучение темы распределенных систем.

Стоит отметить что быстрый отклик очень важен, пресловутый realtime, ведь это же чат! а не доставка почты голубями.

%рандомная шутка про почту россии%

Использовать будем Node.JS, он идеален для прототипирования. Для сокетов возьмем Socket.IO. Писать на TypeScript.

И так, что вообще мы хотим:

  1. Чтоб пользователи могли слать друг-другу сообщения
  2. Знать кто онлайн/оффлайн

Как мы это хотим:

Читать полностью »