В Telegram существуют приватные каналы, которые доступны только для определенных пользователей. В этой статье мы расскажем, как получить доступ к таким каналам и как узнать ссылку на них.
- Возможность просмотра приватных каналов без подписки
- Как получить ссылку на приватный канал в Telegram
- Аудитория просмотров приватных каналов в Telegram
- Разблокировка 18+ каналов в Telegram на Android
- Полезные советы и выводы
Возможность просмотра приватных каналов без подписки
Недавно в Telegram появилась новая функция, позволяющая пользователям просматривать приватные каналы даже без подписки на них. Теперь каждый пользователь сможет переходить по ссылкам на приватные каналы типа t.me/c/123456789/1234, даже если он не является подписчиком данного канала. Это значит, что информация, размещенная в приватных каналах, становится доступной для широкой аудитории.
Как получить ссылку на приватный канал в Telegram
Если вы заинтересованы в получении ссылки на приватный канал в Telegram или желаете поделиться ссылкой с другими пользователями, вам необходимо выполнить следующие шаги:
- Откройте описание канала, на который вы хотите получить ссылку.
- Под названием канала вы увидите ссылку на него.
- Нажмите на ссылку, чтобы скопировать ее в буфер обмена.
Теперь у вас есть ссылка на приватный канал, которую вы можете использовать по своему усмотрению.
Аудитория просмотров приватных каналов в Telegram
Количество просмотров поста в Telegram показывает, сколько человек увидели этот пост. В случае с открытыми каналами в аудиторию просмотров включаются не только подписчики, но и посетители канала, включая пользователей, найденных через поиск. Также в статистике учитываются пользователи, перешедшие на канал через ссылки, размещенные в других каналах.
В случае с приватными каналами, доступными только для подписчиков, количество просмотров ограничивается только числом подписчиков данного канала.
Разблокировка 18+ каналов в Telegram на Android
Если вы столкнулись с ограничением на просмотр 18+ каналов в Telegram на устройстве с операционной системой Android, вам необходимо выполнить следующие действия:
- Откройте Telegram и перейдите в раздел «Настройки».
- Перейдите в раздел «Конфиденциальность».
- Найдите опцию «Выключить ограничения» (Show Sensitive Content).
- Переведите ползунок в положение «Включено».
После выполнения этих действий ограничения на просмотр 18+ контента будут сняты, и вы сможете просматривать соответствующие каналы без ограничений.
Полезные советы и выводы
- Появление возможности просматривать приватные каналы без подписки делает информацию, размещенную в таких каналах, более доступной для пользователей Telegram.
- Для получения ссылки на приватный канал вам достаточно открыть описание канала и скопировать ссылку, находящуюся под названием канала.
- В статистике просмотров поста учитываются как подписчики, так и посетители каналов.
- Чтобы разблокировать 18+ каналы в Telegram на устройстве Android, вам нужно перейти в настройки Telegram, открыть раздел «Конфиденциальность» и включить опцию «Выключить ограничения».
- Отметим, что соблюдение авторских прав и рассмотрение жалоб на контент являются важными аспектами использования Telegram.
Как узнать всё про человека по номеру телефона. 7 способов
Номер телефона неразрывно связан с огромным объёмом информации о каждом человеке.
Достаточно того, что сама SIM-карта регистрируется только по паспорту, а для регистрации в популярных соцсетях нужно указать телефон.
Вот почему лишь одного номера может быть достаточно, чтобы, например, легально узнать имя и внешность человека, а также найти его страницы в соцсетях.
Авторизация пользователей через Telegram
Недавно Telegram добавил поддержку виджета для авторизации пользователей на сайте. Мы решили поэкспериментировать с ним и составить простую инструкцию, как настроить такую авторизацию самостоятельно.
В качестве примера будем использовать код на PHP, однако, данные шаги актуальны и для других языков программирования.
Настройка бота
Для использования виджета вам понадобится Telegram-бот.
Скопируйте токен бота, через которого вы хотите производить авторизацию пользователей.
Название и аватарка выбранного вами бота будут показаны пользователю во всплывающем окне. А вы получите возможность отправлять пользователю личные сообщения через этого бота.
Настройка виджета
На сайте можно получить код виджета и выбрать его внешний вид. К сожалению, возможностей для его произвольного конфигурирования на данный момент нет т.к. виджет встраивается на сайт посредством iframe.
Встраивание на сайт
После того, как пользователь нажмёт на кнопку, Telegram готов отправить вам данные любым из двух способов:
- Отправить пользователя на ваш сайт путём редиректа, передав информацию о нём в GET параметрах.
- Вызвать JavaScript функцию, передав в неё информацию о пользователе в качестве аргументов.
На данный момент поддерживаются следующие данные о пользователе:
- id – уникальный идентификатор пользователя в Telegram
- first_name, last_name – фамилия и имя из профиля пользователя
- username – уникальное имя из профиля
- photo_url – ссылка на аватарку пользователя в виде https://t.me/i/. /user.jpg
- auth_date – дата авторазации
- hash – HMAC-подпись ответа на основе секретного токена бота
Получение данных через JavaScript callback
Выберите в конструкторе виджета опцию Authorization Type: Callback. Сгенерированный в результате код виджета содержит JavaScript функцию, которая будет вызвана после успешной авторизации.
Эту функцию нужно передать в аттрибуте data-onauth тега
Вы можете произвольным образом реализовать функцию onTelegramAuth. Например, послать AJAX запрос на сервер с полученными аргументами.
Получение данных через Redirect
Выберите в конструкторе виджета опцию Authorization Type: Redirect to URL и введите URL, на который вы хотите получить запрос с данными пользователя. Например, введите адрес http://example.com/auth/telegram.
На странице обработки можно положить скрипт index.php следующего содержания:
Проверка данных пользователя
Чтобы удостовериться в правильности полученных данных, нужно проверить hash. Разработчики Telegram приводят пример кода проверки, добавим эту функцию в код из файла index.php
function checkTelegramAuthorization($auth_data) < $check_hash = $auth_data[‘hash’]; unset($auth_data[‘hash’]); $data_check_arr = []; foreach ($auth_data as $key =>$value) < $data_check_arr[] = $key . ‘=’ . $value; >sort($data_check_arr); $data_check_string = implode(«n», $data_check_arr); $secret_key = hash(‘sha256’, BOT_TOKEN, true); $hash = hash_hmac(‘sha256’, $data_check_string, $secret_key); if (strcmp($hash, $check_hash) !== 0) < throw new Exception(‘Data is NOT from Telegram’); >if ((time() — $auth_data[‘auth_date’]) > 86400) < throw new Exception(‘Data is outdated’); >return $auth_data; >
Разберём механизм работы функции проверки. В качестве аргумента она получает массив с данными пользователя.
array(7) < [«id»]=>string(7) «1831337» [«first_name»]=> string(18) «Александр» [«last_name»]=> string(16) «Менщиков» [«username»]=> string(5) «n0str» [«photo_url»]=> string(36) «https://t.me/i/userpic/100/n0str.jpg» [«auth_date»]=> string(10) «1518168109» [«hash»]=> string(64) «abba<..>1345» >
На первом шаге из массива извлекается значение по ключу hash и сохраняется в переменной.
На втором шаге массив преобразуется к виду key=value и сортируется в лексикографическом порядке. Полученные данные склеиваются в одну строку через разделитель “n” (код символа – 0xA0).
Далее происходит проверка равенства HMAC-SHA-256 подписи этой строки и значения сохранённого hash. Дополнительно проверяется не устарела ли auth_date.
В случае успеха, функция возвращает исходный массив без параметра hash.
Авторизация пользователя на сайте
Добавим в файл код вызова функции проверки
if (isset($_GET[‘hash’])) < try < $auth_data = checkTelegramAuthorization($_GET); echo «Hello, » . $auth_data[‘username’]; >catch (Exception $e) < die ($e->getMessage()); > >
Пользователь увидит сообщение с приветствием в случае успешной авторизации. Теперь вы можете сохранить информацию о нём в базу данных и привязать его ID к текущей сессии.
Пример кода из рабочего проекта
try < $profile = $tg->checkTelegramAuthorization($_GET); $id = $profile[‘id’]; $user = Model_User::findByAttribute(‘telegram_id’, $id); if ($user->is_empty()) < $user = new Model_User(); $user->telegram_id = $id; . $user->save() > else < . >>
Кастомизация кнопки
Сейчас из-за ограничений iframe нельзя изменить внешний вид кнопки. Однако, если возникла сильная необходимость, можно обойти это ограничения с помощью clickjacking.