Телеграм Технарь
24.8K subscribers
67 photos
7 videos
6 files
141 links
Инсайды о внутренней кухне разработки Телеграм и его фитчах.

Админ: @turutiki
Download Telegram
Как вы знаете, мы (команда этого канала) уже давно работаем с прокси для Телеграм. И запустили около 30 штук за последние 5 месяцев.
Все знают о главных минусах прокси:
1. Нестабильность соединения.
2. Медленная скорость.
3. Невозможно скачивать видео и большие файлы через Телеграм.

Собрав весь наш опыт, мы попытались решить эти проблемы и запустили в тестовом виде оптимизированный MTProxy, который теперь стал быстрым, стабильным и позволяет скачивать большие файлы.

Помогите нам в его тестировании. Подключайте уже сейчас.

В первую неделю мы не будем размещать в нем рекламу спонсорских каналов, чтобы большее число людей протестировали его.
Обратите внимание, наиболее эффективно этот прокси будет работать, если вы находитесь в европейской части России. Для жителей РФ, находящихся по ту сторону уральских гор, мы выпустим отдельный более подходящий прокси в ближайшее время.
Еще раз: ссылка на подключение.
Отзывы о впечатлениях об этом прокси можете писать на @turutik.
Возможность отметить сообщения непрочитанными

В одном из недавних обновлений Telegram в ряду прочих улучшений была наконец-то добавлена возможность отметить сообщения непрочитанными.

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

Отметка «Mark as unread» делает сообщения непрочитанными только для вас, в качестве напоминания о важной информации.
В формате мессенджера, когда вам приходит много уведомлений из разных чатов, бывает очень легко забыть, что вы собирались прочитать интересный пост или ответить кому-то.

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

Чтобы отметить чат непрочитанным, нужно зажать его в списке диалогов, и в появившемся меню выбрать пункт «Mark as unread» - как показано в примере.
Мессенджер сохраняет позицию каждого диалога на том месте, до куда вы «промотаете» переписку. Поэтому, если вы хотите вернуться к прочтению более ранних сообщений, прежде чем пометить чат непрочитанным, промотайте его вверх.

Когда вы откроете диалог, пометка автоматически снимется.
Работает и обратная пометка «Mark as read» - таким способом удобно отмечать прочитанным диалог с большим количеством непросмотренных сообщений, когда вы не собираетесь читать длинную переписку.

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

Справедливости ради стоит отметить, что в WhatsApp функция пометки непрочитанным тоже есть, и появилась она раньше, чем в Telegram. Но например Viber и ВКонтакте до сих пор не захотели добавить эту простую, но важную опцию.
Появилась дополнительная настройка для звонков в Telegram.

В последнем обновлении Telegram появилась возможность переключать режим звонков с Peer to peer на пересылку аудио-трафика через сервера Telegram: можно оставить подключение P2P для всех пользователей, или только для списка контактов, либо совсем отключить.

Давайте разберемся, в чем суть этой настройки - что это даёт обычному пользователю?

Раньше в мессенджере по умолчанию для всех звонков использовался P2P, то есть Telegram-клиенты звонящих соединялись напрямую друг с другом. Такая архитектура обеспечивает отличное качество связи, но имеет серьезный недостаток: эта технология дает собеседнику возможность определить ваш IP. В современном судебном делопроизводстве активно используют схему установки личности человека по IP-адресу, так что это очень нежелательная возможность, даже для законопослушных граждан.

Чтобы решить проблему открытого IP, в последнем обновлении добавили возможность совершать звонки через сервер Телеграм. Разработчики предупреждают, что это может отрицательно сказываться на качестве звука, поскольку при передаче сигнала добавится еще одно дополнительное звено.
Чтобы минимизировать потери качества связи, можно оставить возможность P2P-звонков для своего списка контактов, оградив себя от определения IP-адреса посторонними пользователями.

Другая проблема, к сожалению, не решается этим обновлением - у государства по-прежнему остается возможность частично или полностью заблокировать звонки через Telegram, блокируя доступ к серверам мессенджера.
Сделать это можно было и в случае с P2P, как например это происходит в Иране. Власти страны блокируют звонки через Telegram уже с 2017 года, сразу после их появления. Несмотря на то, что абоненты связываются друг с другом напрямую, в момент совершения звонка должно произойти обращение к серверу, которое как раз и блокируется иранскими властями.

Из-за блокировки Telegram в РФ, у многих пользователей тоже периодически возникают проблемы с дозвоном. В таких случаях позвонить получится только используя VPN или прокси.
MTProxy не поддерживают непосредственную передачу аудио-трафика, однако подключение к MTProxy позволяет получить актуальные незаблокированные адреса серверов Telegram, чтобы вы смогли дозвониться до собеседника - не важно, используя P2P или через прослойку сервера мессенджера.
Тестирую Telegram Passport.

В канале Digital Доктор опубликовали материал о том, почему Telegram Passport пока что почти никому не нужен.
Я испытал новый сервис на себе, и сегодня расскажу вам о том, что из этого получилось.

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

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

В качестве примера в блоге telegram.org предлагается создать аккаунт в сервисе ePayments.com - это популярный кошелек для получения оплаты из-за границы у фрилансеров. Я взял для теста сервис Minter.network, проект канала @DeCenter - вообще, это блокчейн-платформа, позволяющая создавать собственные монеты любому человеку. Но нас в данный момент интересует функция криптовалютного кошелька для покупки основной монеты сети - BIP.

Ранний доступ к Minter и авторизация через Telegram доступна в боте @MinterNetworkBot. Опишу процесс регистрации через Паспорт по шагам:
• Нажимаем в боте «Создать новый аккаунт». (Рис.1)
• Дальше нужно прочитать и согласиться с условиями использования.
• После этого бот присылает кнопку для авторизации через Telegram Passport. (Рис.2)
На десктопе на этом шаге появились проблемы. На ПК у меня авторизовано несколько аккаунтов, и никак не получалось вызвать процедуру заполнения Паспорта в нужном. Поэтому лучше сразу делать это на смартфоне: мультиаккаунты в мобильной версии - встроенное решение, поэтому никаких проблем не будет.
Подробнее про мультиаккаунты - в одном из прошлых
постов
• Если в аккаунте не установлен пароль для двухфакторной авторизации, на этом этапе придется его задать. (Рис.3)
После установки пароля пришлось еще раз кликать по кнопке Telegram Passport в боте, чтобы перейти к следующему шагу - иначе процедура установки пароля просто зациклилась.
• Теперь пришло время загружать документы.
Можно выбрать обычный паспорт, водительские права, или другое удостоверение личности. Я выбрал водительские права. (Рис.4, Рис.5)
• Нужно загрузить фото или скан лицевой и обратной стороны документа, и фото себя, с документом в руках. (Рис.6)
• И заполнить ряд полей вручную. (Рис.7)

После заполнения всех данных бот сообщает, что процедура верификации началась, и о результатах меня уведомят дополнительно. (Рис.8)
Суть в том, что Telegram Passport не берет на себя роль модератора и не проверяет достоверность данных и соответствие их каким-либо требованиям, он просто их хранит (конечно же, в зашифрованном виде).
Дальше же эту информацию каждый конкретный сервис обрабатывает сам, по своим правилам. И может выйти так, что авторизация не будет успешной.
Так и произошло со мной - с первой попытки Minter не одобрил введенную в Passport информацию. Вот такой ответ пришел от бота: Рис. 9.

И что же делать в такой ситуации? Очевидно, как и рекомендует бот, нужно отредактировать Passport, перезагрузив более качественные фото в профиль, и повторить попытку авторизации.
Необходимо, чтобы текст был четким и читаемым на всех снимках, особенно на селфи с документом в руках - но сделать такое фото без посторонней помощи не так-то просто.

После первичного заполнения Паспорт становится доступен в разделе настроек, и там его можно редактировать. (Рис.10)
Со второй попытки, после замены фото, моя авторизация прошла успешно. Резюмирую: из-за того, что сам Telegram не верифицирует ваши данные, есть риск, что придется редактировать Паспорт под требования каждой платежной системы или биржи. Из-за этого такое хранилище становится менее удобным.
Ранее Павел Дуров лично упоминал канал «Футляр от виолончели». Сколько заплатили главе Роскомнадзора за запрет Telegram? Кто в Кремле владеет нелегальными биткоин-биржами? Зачем ФСБ курировала кардеров, похитивших $2 млрд? Почему клиентами панамского оффшоров были жена чиновника-педофила Дмитрия Пескова, виолончелист Путина и украинский президент? Если вы хотите знать ответы, подписывайтесь на «Футляр» прямо сейчас: https://t.me/rospres
Иногда с пользователями Telegram могут случаться неприятные казусы, когда аккаунт пользователя может попасть под различные ограничения.
О каких конкретно ограничениях идет речь? Например, вы не сможете писать другим пользователям, пока они первые вам не напишут, или ваш канал могут заблокировать по непонятным для вас причинам.
Сегодня разберем конкретные случаи и расскажем, что делать в каждом из них.

1. Вы получили спам-бан на ваш аккаунт.
Это происходит, когда вы пишите сразу нескольким людям, с которыми у вас до этого не было переписки, с некой просьбой или обращением. Как выглядит такой диалог, показано на скриншоте.
Если пользователям по какой-то причине не понравятся ваши сообщения, то они могут нажать кнопку «Report spam», и вы получите ограничения на ваш аккаунт. Временное или вечное - в зависимости от количества жалоб на ваш аккаунт. Получив клеймо спамера, вы не сможете писать незнакомым людям, и также не сможете создавать каналы.
Когда пользователь добавляет вас в спам, то одновременно происходит и блокировка чата с вами, то есть он больше не будет получать сообщения от вас: хоть вы и сможете продолжить писать сообщения в чат, до него они не дойдут. Кроме того, вам перестанет отображаться его аватарка, а время его последнего визита в Telegram будет отображаться как «long time ago».
Что делать? Написать боту @SpamBot, и попробовать обжаловать наказание. Как минимум, бот позволит узнать вам, на какой срок вы получили спам-бан. Если вы получили вечный бан, то попробуйте его обжаловать, хоть шансов и мало. Чаще всего такой бан получают за реальный спам с вашей стороны, и ничего обжаловать здесь уже нельзя.

2. При авторизации на экране появляется надпись «Номер заблокирован».
Пример уведомления - на скриншоте. Это значит, что с вашим аккаунтом снова все плохо. Скорее всего, вы слишком активно спамили, либо Telegram подозревает, что вы - бот, который используют для накрутки показателей каналов, а не живой человек. Также возможен вариант, когда вас заблокировали за публикацию недопустимого контента.
Что делать? В окне авторизации нажать на кнопку «Помощь» (в английской версии - «Help») и узнать причины блокировки, а затем попытаться их обжаловать.

3. Ваш канал заблокирован.
При попытке открыть заблокированный паблик отображается уведомление о блокировке с указанием причины. Почему это могло произойти? Из-за публикации в вашем канале недопустимого контента: детская порнография, терроризм, мошенничество (чаще всего на тему ICO). Но также возможно, что вы порядочный человек, и вас заблокировали по ошибке из-за необоснованных жалоб пользователей на контент вашего канала.
Что делать? Написать в поддержку: Настройки → «Задать вопрос» (в английской версии - «Ask a Question»).

4. Ваш канал/группа/бот заблокирован на iOS?
Скорее всего, причина в публикации изображений порнографического характера, либо, также как и в предыдущем случае, это жалобы пользователей. Алгоритмы Telegram умеют распознавать на изображениях в канале порнографию. Поскольку Apple, в отличие от Google, ведет гораздо более жесткую политику в плане авторских прав и защиты детей от порнографии, то Telegram блокирует подобные каналы именно для пользователей iPhone. При этом, для операционных систем Android и Windows ваш канал/бот/группа будут оставаться доступными.
Что делать? Удалить контент, защищённый авторскими правами/порнографию и написать на почту dmca@telegram.org с просьбой разблокировать канал на iOS.

5. Кто-то смог завладеть юзернеймом вашего канала/группы/бота?
Либо использует очень похожий по написанию юзернейм, чтобы заниматься мошенничеством от вашего лица?
Что делать? Написать на почту dmca@telegram.org.
Что делать, если пришел код для входа в Telegram, но вы его не запрашивали?

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

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

1. Проверьте активные сеансы.
В настройках безопасности отображаются все сеансы с вашего аккаунта (см. скриншот). Показаны: версия приложения (Desktop/мобильная/веб-версия), устройство или браузер (название операционной системы/модель смартфона/название браузера), IP-адрес и локация устройства, и время последнего входа.
Локация устройства будет отличаться от вашего реального местоположения в случае использования VPN - не забывайте об этом.
Если в списке есть посторонний сеанс, инициированный не вами, обязательно завершите его, и задайте дополнительный пароль для приложения (об этом ниже, в пункте 2).
Можно завершить все сеансы, кроме текущего, либо выбрать конкретный (нажатием на сеанс). Это действие сбрасывает авторизации, параллельные с текущей - может также быть полезным, если вы пользовались Telegram на чужом устройстве и забыли выйти из аккаунта.

2. Включите двухэтапную аутентификацию.
Задайте дополнительный пин-код для входа в приложение - тогда для того, чтобы войти в ваш аккаунт, одного системного пароля будет недостаточно. Зайдите в раздел «Безопасность», «Двухэтапная аутентификация» и следуйте инструкции: укажите пароль, введите его подтверждение, укажите подсказку, e-mail для восстановления, и перейдите по ссылке в письме (эти шаги показаны на скриншоте).
Не стоит путать «Cloud password» (в русской версии - «Облачный пароль») и «Local passcode» («Код-пароль») - второй не имеет отношения к двухфакторной авторизации, он лишь скроет вашу переписку от посторонних на конкретном текущем устройстве.

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

Поделитесь этим материалом с родственниками или друзьями, если они не знают, что делать в подобной ситуации.
Как открыть с десктопа ссылки telegram.org, telegra.ph и t.me

Приложение Telegram работает в России без перебоев благодаря ротации IP-адресов серверов мессенджера и встроенному MTProxy.
Но блокировка распространяется не только на приложение, а также на сайт telegram.org, сервис telegra.ph и ссылки формата t.me.
В мобильных клиентах технология Instant View позволяет просматривать Telegraph-статьи и статьи из блога Telegram прямо в приложении, t.me-ссылки тоже открываются без проблем.
Но в случае Desktop-приложений могут возникать проблемы: не у всех есть возможность поставить прокси или VPN на компьютер, и эти ссылки в браузере не загружаются.

Решение на сегодняшний день - это использование редирект-сервисов и зеркал для заблокированных доменов.

1. Сайт telegram.org
Чтобы читать в блоге про новые функции, есть зеркало сайта: https://telega.one/blog.
Cкачать установочные файлы можно по ссылкам, актуальные файлы перезаливаются с основного сервера:
Windows - https://dl.tlgrm.click/desktop/win;
MacOS - https://dl.tlgrm.click/desktop/mac;
Linux - https://dl.tlgrm.click/desktop/linux.

2. Сервис telegra.ph
Чтобы просмотреть любую ранее опубликованную Telegraph-статью, замените в ссылке «telegra.ph» на «tgraph.io».
К сожалению, писать новые статьи в Телеграфе без прокси или VPN невозможно: единственное зеркало - graph.org, также внесено в список блокировок.
Если у вас есть средства обхода блокировок, продолжайте писать новые статьи в Телеграфе, редактируя итоговую ссылку, если нет - используйте другие подобные сервисы.
Чаще всего выбор пользователей падает на платформу Medium.com.

3. Ссылки t.me
Есть два решения. Либо земенить «t.me на «tele.click» или «telega.at» - эти ссылки будут открываться в браузере с превью канала или сообщения, и их автоматически предлагается открыть, используя Telegram.
Либо использовать ссылки формата «tg://resolve?domain=name», где «name» - это юзернейм канала, «tg://resolve?domain=name&post=number», где «number» - номер сообщения в канале.
Эти ссылки открываются через протокол самого мессенджера - поскольку нет обращения к протоколу https, их невозможно заблокировать, пока работает Telegram.
Domain-ссылки открываются сразу в приложении, без превью в браузере.

4. Web-версия
Открытые исходные коды позволяют сторонним разработчикам создавать альтернативные клиенты мессенджера, в том числе существует и несколько неофициальных веб-версий - https://web2.tlgrm.eu/, https://web.telegram.im/.
Экспорт данных из Telegram: зачем он нужен?

В июне в мессенджере появилась функция выгрузки данных из аккаунта. Расскажу вкратце, как это сделать и какие это даст результаты - а после разберемся, зачем?

Для экспорта найдите в настройках десктопного приложения в разделе «Advanced» пункт «Export Telegram Data».
Процесс это будет небыстрый. Но можно указать, какие именно данные сохранять: если не скачивать медиа-файлы (фото, аудио, видео, стикеры), то выгрузка произойдет намного быстрее. В любом случае, экспорт не помешает использованию Telegram - процесс происходит в фоновом режиме (см. скриншот).
Данные профиля можно сохранить в двух форматах:
• HTML - такой архив удобно просматривать в браузере с комфортной встроенной навигацией (как это будет выглядеть: Рис.1, Рис. 2 и Рис. 3);
• CSV - визуально «нечитабельно», зато легко анализировать информацию (как это будет выглядеть: Рис.1, Рис. 2).

Зачем нужен экспорт данных:
• для переноса информации на другую платформу - в случае с Telegram перенести данные можно в приложения, созданные на основе Telegram API;
• для архивирования/резервного копирования - тут все очевидно, можно сохранить важные диалоги, если вы не хотите доверять их сохранность серверам компании;
• для обеспечения информационной безопасности - чтобы не давать спецслужбам доступ ко всей базе, и в то же время удовлетворить их потребность в информации.
Но часть пользователей усомнилась, не добавили ли его специально, только чтобы «посодействовать» государственной слежке?

На самом деле, реальная причина появления экспорта - исполнение требований европейского регламента по защите данных под названием GDPR (General Data Protection Regulation).
GDPR, в отличие от законодательств многих стран, служит не для того, чтобы в чем-то обвинять граждан, а наоборот, защищать их, как субъектов персональных данных.

Любые компании, предоставляющие товары и услуги европейцам, подпадают под действие этих норм.
Даже если вы иностранец и прилетели в ЕС на выходные, на вас также должны распространяться правила GDPR, если в момент обработки данных вы находитесь в Евросоюзе.
Перечень требований к компаниям, занимающихся хранением и обработкой персональных данных довольно большой, но основные идеи такие:
1. Вы можете выяснить, что компания знает о вас и как использует эти данные.
2. Вы можете отозвать свое согласие на обработку данных в любой момент.
3. Вы имеете право на перенос персональных данных.
4. Вы сможете требовать удалить или запретить использовать свои персональные данные.
Многие из этих пунктов подразумевают возможность выгрузки данных, отсюда и появилась необходимость экспорта.

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

Для чего это может понадобиться: чаще всего, чтобы удалить что-то из созданного вами ранее.

Для администрирования созданных вами ботов отправьте @BotFather команду /mybots.

Для просмотра списка созданных вами стикеров отправьте @Stickers команду /stats.

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

Итак, в настройках экспорта снимаем все лишние галочки, оставив отмеченными только группы и каналы, и только с вашими сообщениями (см. скриншот). Это поможет сократить время выгрузки и объем выгружаемых данных.
Формат выгрузки выбираем JSON, чтобы файл было легко проанализировать.
По завершении экспорта откройте файл в текстовом редакторе с возможностью поиска - подойдет Notepad, Sublime.
Если канал/группа был создан вами, в файле будет строка с записью об этом: "action": "create_channel" либо "action": "create_group".
Соответственно, сделав поиск по файлу вхождений символов "create_", вы получите список всех созданных вами групп и каналов.
Перейдя к конкретной строке, можно посмотреть название сообщества, и является оно публичным или закрытым (см. скриншот).
В файл выгрузки попадут также супергруппы и каналы, из которых вы вышли - то есть те, которые в приложении Telegram уже не отображаются.
К посту о том, как просмотреть созданные вами каналы и группы, подписчики добавили еще один, более простой способ, не требующий экспорта данных.
В модифицированном клиенте Plus Messenger есть вкладка «Управление» (либо «Administrator») - в которой как раз собраны все чаты и паблики, в которых вы являетесь создателем.
Сообщества, в которых вы назначены администратором, здесь не отображаются.
Уже несколько подписчиков указали на ошибку в прошлом посте, поэтому вынужден принести извинения за недостоверную информацию.

Поскольку я не использую Plus Messenger на постоянной основе, я ошибочно сказал о том, что на вкладке "Управление" отображаются только те каналы и группы, которые созданы вами.
Это действительно так, но только в режиме по умолчанию. В специальном разделе настроек есть переключатель, который отображает все сообщества, в которых вы назначены администратором.

Кстати, в следующем посте как раз планирую больше рассказать об альтернативных клиентах.
Безопасны ли неофициальные клиенты Telegram?

Существует множество альтернативных приложений на базе Telegram API, некоторые снискали большую популярность. Часто их потенциальные или текущие пользователи задаются вопросом - насколько безопасно использовать неофициальный клиент мессенджера? Давайте разберемся.

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

Какие еще есть требования по использованию API:
• Все клиентские приложения должны защищать приватность своих пользователей.
• Нельзя заставлять пользователей других клиентов устанавливать ваше приложение, чтобы просмотреть отправленный из него контент.
• Запрещается менять статусы пользователей в сети, статусы доставки/прочтения сообщений; мешать удалению самоликвидирующегося контента.
Для новых клиентов предусмотрена специальная форма регистрации.

В случае нарушения условий, Telegram заблокирует приложению доступ к API и сообщит о нарушении в магазин приложений.
Подобная ситуация произошла с Teleplus для iOS - мессенджер пользовался популярностью, поскольку это был единственный клиент для iOS, предоставляющий возможность разделять по вкладкам группы, каналы и личную переписку.
Teleplus пропал из App Store как раз из-за несоответствия требованиям экосистемы Telegram - приложение было нестабильным, часто вылетало, в нем было много назойливой рекламы.

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

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

К примеру был прецедент, когда неофициальный клиент Chagram принудительно подписывал пользователей на одноименный канал - вроде бы ничего криминального, но после этого Telegram ужесточил условия использования API.

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

P.S. Я ни в коем случае не указываю на какие-либо из альтернативных клиентов и не намекаю на их непорядочность. Тем более, что сейчас использование Telegram API - процесс крайне прозразный и отлаженный. Я лишь объясняю простым языком, как это работает и какие существуют риски.
Еще пара дополнений к посту о безопасности Telegram и альтернативных клиентов.

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

По поводу же неофициальных клиентов, подписчик прислал мне интересное дополнение:
От бана клиента, однако, легко спастись, использовав API key официального клиента, не всё так хорошо, как хотелось бы.
Для доступа к Client API нужен ключ, который должен быть уникален для клиента. Есть этот ключ и в официальных клиентах, откуда его можно вытащить (вроде даже в исходниках есть) и вшить в свой. Для сервера клиент будет выглядеть официальным, а забанить его — значит забанить официальные.
Злоумышленники всегда найдут способ «взломать» любую даже самую неуязвимую систему, причем с абсолютно неожиданной стороны. Что еще раз подтверждает мысль о том, что ваша безопасность - в ваших руках.
Быстрая пересылка сообщений из каналов.

#а_вы_знали, что посты из каналов можно пересылать с помощью быстрого «форварда»? Часто глаз замыливается, и некоторые элементы интерфейса просто не замечаешь.
Смысл в том, что пост отправляется в том же окне, без перехода к другому диалогу. Кнопка быстрой отправки есть возле каждого поста в любом канале - публичном или закрытом.

Просто сравните:
Обычная пересылка перекидывает вас в окно диалога с адресатом. После этого легко потерять мысль, забыть, что вы не дочитали пост.
• В быстрой пересылке можно выбрать сразу нескольких получателей и остаться на том же месте, в том же канале, где вы и были.

Эта функция существует уже давно, а в недавнем обновлении она была доработана: теперь к пересылаемому посту можно сразу добавлять комментарий.
Зачем Telegram делает открытый API?

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

Какие «внешние» решения уже заменены:

1. Авторизация на сайтах.
Возможность самостоятельно настроить авторизацию через Telegram на любом сайте с использованием Bot API и механизма Deep linking существовала уже давно. Для упрощения этой задачи сторонние разработчики написали бота @AuthgramBot - в принципе, в имеющихся условиях это было удобным решением, но проблема была в том, что бот являлся неконтролируемой прослойкой между вами и вашими пользователями.
Нативное решение от команды Telegram - это легко настраиваемый готовый виджет авторизации, с привычным дизайном и без лишних сомнений в сохранности данных.

2. Форматирование текста.
Ранее выделять текст жирным начертанием, курсивом, и зашивать ссылки можно было только с помощью специальных ботов с поддержкой markdown-разметки (спецсимволов), либо html-форматирования - что, конечно, было не очень удобно. Пример - inline-бот @bold.
Этим летом появилось упрощенное встроенное форматирование через контекстное меню, доступное даже не самым опытным пользователям.

Еще два пункта не связаны с API. Они скорее направлены на замыкание экосистемы Telegram, чтобы минимизировать лишние действия вовне:

3. Прокси.
На первых этапах внедрения прокси в Telegram предлагалось использовать HTTP- и SOCKS5-прокси. С ними все было не очень удобно: не понятно, где их искать, и сколько они проработают.
Встроенные MTProxy решили проблему постоянной блокировки серверов, поскольку трафик невозможно деобфусцировать. Решили они и проблему распространения: участникам экосистемы выгодно разворачивать собственные MTProxy-сервера и раздавать адреса своим подписчикам.

4. Архивирование.
В одном из последних обновлений появилась встроенная архивация: теперь можно будет отправлять сразу несколько файлов или целые папки без предварительной архивации, Telegram сам создаст архив (пока что только в Desktop-версии для MacOS).

В следующих постах расскажу, какие решения планируется заменить в ближайшем будущем, а каких можно вообще не ждать, и почему.

Как обычно, жду ваши дополнения/замечания.
В продолжение предыдущего поста перечислю, какие «внешние» решения в экосистеме Telegram будут заменены в ближайшем будущем на нативные.

1. Отложенные посты.
Для администраторов каналов это очень востребованная функция. Сейчас эту потребность закрывают неофициальные боты, наподобие @ControllerBot.
Судя по косвенным причинам, в скорой перспективе возможность задавать таймер для публикации станет встроенной: в шаблонах для перевода Telegram на разные языки появился раздел formatDateScheduleDay.

2. Веб-версия.
Текущая официальная веб-версия Telegram в 2014 году преподносилась как неофициальный проект от сторонних разработчиков. Хотя на самом деле, ее автор Игорь Жуков не такой уж посторонний для команды человек (подробный разбор этой ситуации можете почитать здесь).
Как бы там ни было, в веб-версии уже давно не хватает многих функций: нет возможности закреплять чаты, создавать каналы, не отображаются секретные чаты.
В октябре аккаунт Telegram в Твиттере сообщил о том, что работа по обновлению веб-версии уже ведется.

3. Мультиаккаунты на десктопе.
Не буду обнадеживать - каких-либо подтверждений о том, что мультиаккаунты вскоре появятся в Desktop-приложении нет.
Скорее даже наоборот: пару месяцев назад в ветке обсуждений на Гитхабе сообщалось, что в данный момент этой задачей не планируют заниматься.
Тем не менее, эту функцию рано или поздно однозначно добавят, как и в мобильных приложениях. А до тех пор напоминаю, как эту потребность можно решить на Windows с помощью дублирования exe-файлов.
Какие функции не появятся в Telegram?

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

1. Вкладки.
О разделении на отдельные вкладки каналов, групп и личных чатов пользователи просят уже давно. Год назад была предпринята попытка внедрить эту функцию: в beta-версии для MacOS полдня была доступна «новостная лента» - не в виде вкладок, а в виде возможности перенести каналы в специальную папку «Feed». Однако после кратковременного тестирования «лента» тут же исчезла.
Почему Дуров так категорично не хочет этого делать? Причина проста - публичные каналы и группы являются точкой роста численности аудитории мессенджера. Качественный контент привлекает в экосистему больше пользователей. Расположение каналов вперемешку с личными контактами позволяет фокусировать на них больше внимания, благодаря чему активность авторов растет. Если же вынести паблики в отдельную область, просмотров будет намного меньше, что в итоге будет убивать всю экосистему.

2. Репосты.
Был такой бот @socialreposter_bot - с его помощью можно было прикреплять к постам кнопки «Репост в ВКонтакте» и «Репост в Facebook». При этом контент поста полноценно дублировался в соцсеть, в отличие от другого бота - @SocialRepostBot, который вместо самого поста публиковал лишь ссылку на него.
Сейчас ни один из них уже не поддерживается, и команда Telegram не планирует делать подобных встроенных решений.
Причина: ВКонтакте и Facebook находятся в стадии оттока аудитории, и постить туда, по сути, не для кого. Активных пользователей в этих соцсетях с каждым днем все меньше. Что касается других площадок (Instagram, Twitter, YouTube): их форматы попросту не подходят для репоста из Telegram, где основной контент - это длинные тексты.

3. Опросы/реакции.
Боты от сторонних разработчиков для опросов - @PollBot и @QuanBot, и для кнопок с реакциями - @ControllerBot. Причина отсутствия нативных опросов и реакций - в их невысокой востребованности. Скорее всего этих функций в Telegram не будет, потому что это нужно только администраторам каналов, и то не всем.

4. Встроенный браузер на десктопе.
Внешним решением в данном случае являются обычные браузеры. Если на смартфоне просмотр ссылок обычно предполагает быстрое прочтение, то на десктопе после просмотра ссылок пользователи часто хотят прочитать что-то еще по теме, и все равно уйдут в браузер. То есть, чтобы не пришлось покидать мессенджер, придется сделать полноценный полноформатный браузер, что сложно и не оправданно, в сравнении с форматом Instant View.
Embed-коды для встраивания Telegram-постов на сайт.

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

Зачем это нужно? Для привлечения в мессенджер дополнительной аудитории за счет цитирования в интернете интересных Telegram-пабликов:
• через интернет-СМИ и блоги;
• через Telegram-каталоги с отображением последних сообщений из канала (пример).

Всевозможные вариации превью для разных типов сообщений можно посмотреть здесь. Поскольку виджет обрабатывает t.me-ссылки, блокируемые в РФ, превью будет отображаться в браузере только с включенным VPN/прокси.

Виджет поддерживает любые виды контента:
• текстовые сообщения;
• гифки;
• стикеры;
• одиночные изображения с подписью;
• фотоальбомы;
• обычные видео;
• круглые видеосообщения;
• аудиосообщения;
• файлы;
• опросы.

Все аудио и видео интерактивные, то есть запускаются прямо в браузере. Стикеры, гифки и изображения отображаются прямо в браузере, фотоальбомы также можно пролистывать без перехода в Telegram. Для загрузки файлов нужно перейти в мессенджер.

Где взять код: на всех t.me-страницах с сообщениями из пабликов есть кнопка EMBED, которая показывает код для встраивания превью на любой веб-сайт (см. скриншот).

Подобный обработчик встроен и в Telegra.ph: не только для YouTube- и Twitter-ссылок, но и конечно же, для t.me-ссылок. То есть, если вставить в Telegraph-статью обычную ссылку вида https://t.me/имя-канала/номер-поста, он будет отображаться также, как с помощью embed-кода на других сайтах.
Новые возможности прокси в Telegram.

Еще больше удобства при использовании прокси появится в ближайших обновлениях. Добавлены два новых инструмента - но пока что не во всех версиях клиентов.

1. Сканирование прокси по QR-коду

В beta-версии Telegram для iOS тестируется использование QR-кодов для мгновенного подключения к прокси. По сути, это та же самая ссылка вида https://t.me/proxy?server=адрес&port=номер&secret=код, зашитая в авто-генерируемый QR-код.

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

Чтобы поделиться сервером с друзьями, нужно зайти в настройки прокси и выбрать Share QR Code - код будет сгенерирован автоматически.
Попробовать: https://t.me/tgfiles/391.

2. Поделиться своим списком прокси

Во всех приложениях Telegram можно поделиться своими прокси-серверами. Но как быть, если вы хотите отправить кому-то не один адрес, а сразу весь свой список?

В стабильной версии Telegram для iOS (⬇️ App Store) уже есть возможность поделиться сразу всеми активными прокси-серверами одним списком для последующей установки.
Делиться можно не только в Telegram, но и в других мессенджерах, по SMS, или просто скопировать в буфер обмена. Это удобно, если Telegram у кого-то недоступен из-за блокировок.

Кнопка «Поделиться списком прокси» формирует список ссылок вида https://t.me/proxy?server=адрес&port=номер&secret=код, разделенных переносами.