Добро пожаловать в сообщество newdle.ru!

Мы очень рады, что Вы посетили наш форум! Мы сможем помочь Вам с решением ваших вопросов. Пожалуйста, пройдите регистрацию, она занимает не более одной минуты.

РЕГИСТРАЦИЯ!
Иконка ресурса

Плагины xenforo 2 [Telegram] Core 2.0.4.1

Нет прав для скачивания
  • Автор Newdle
  • Дата создания
  • Теги
    [telegram] core
  • Ваша группа достигла максимального количества скачиваний в день.
Совместимость с XenForo
2.2
Поднимаем свой прокси-сервер

Добавляет возможность авторизоваться через Telegram Login Widget. Из-за особенностей работы последнего, вместо моментального редиректа на Telegram, происходит открытие страницы с предложением нажать на кнопку авторизации.
P.S.: Т.к. провайдеры блокируют доступ к серверам Telegram, скорее всего, кнопка авторизации Telegram не будет видна без VPN/прокси. Для них предусмотрен вариант перехода в клиент Telegram.

1


Подробный разбор установки 2.х
С 1.х многое поменялось. Что-то стало проще, что-то - сложнее. Мне показалось, что будет разумнее написать один большой пост про установку и ссылаться, в случае чего, на него. Ну и ссылку на него в описание впилить...
В этом "подробном" разборе будет опущена процедура скачивания архива, его распаковки и загрузки на удалённый сервер посредством любого протокола (FTP / SFTP / WebDav) с последующим нажатием кнопки Установить в админке. Это такие банальные вещи, которые надо уже уметь делать без явных уточнений, что и как.
  1. Переходим в Telegram и через поиск находим "отца ботов" (@BotFather).
  2. В диалоге с ним нажимаем Start.
  3. В ответ, отец напишет Вам, что он помогает с созданием и управление ботами в Telegram, и выведет перечень всех команд, которые он для этого знает. Нас интересует /newbot. Нажимаем на неё прямо в сообщении.
    Трюк с нажатием на команду в тексте сообщения точно работает в официальных клиентах. Если у Вас - неофициальный, наберите/скопируйте её руками и отправьте в чат как обычно.
    В ответ последовательно сообщаем отцу имя нашего бота и его имя пользователя.
  4. В ответ, отец пришлёт нам токен бота. На скриншоте ниже, его местоположение будет выделено красной рамочкой.
    1573929394429.png
    Обратите внимание на предостережение отца ботов касательно токена. Никому его [токен] не показывайте! Это важно!
  5. Для возможности использовать авторизацию через Telegram, нам так же нужно сообщить отцу ботов, на каком домене располагается наш сайт. Для этого, мы либо листаем в диалоге выше, находим команду /setdomain и нажимаем левой кнопкой мыши по ней, либо вводим её вручную в чате.
    В вылезшей клавиатуре выбираем нашего бота и отправляем в ответ чисто домен (без протокола; пример ниже).
    Клавиатура может вылезть, а может и не вылезть.
    Своего первого бота я делал в 2016 году, и с тех пор утекло много воды. Всех деталей я не помню.
    Но, на данный момент, на моём аккаунте приличное кол-во аккаунтов ботов (не менее 10 штук), и я всегда вижу эту клавиатуру. Вылезает ли она, когда бот один - я, соответственно, не помню.
    1573929741515.png
  6. На этом наши приготовления бота завершены. Если необходимо - можете так же через отца задать аватарку (/setuserpic) или изменить имя (/setname). Изменить тег бота не представляется возможным на данный момент. Если Вы на этом этапе резко осознали, что выбрали плохой тег боту - самое время удалить бота (/deletebot) и сделать его с нуля.
  7. Переходим на форум и заходим в панель администратора (/admin.php). В меню сбоку заходим в Setup → Service providers → Connected accounts, в списке находим Telegram и нажимаем левой кнопкой мыши по нему.
  8. В отличие от 1.х, где нам нужно было ввести и имя бота в определенном формате (без символа собаки) и токен, в 2.х теперь нужен только токен. Его и заполняем, выбираем способ авторизации и нажимаем Save.
    Если при сохранении вылезает ошибка, а токен верный (и без пробелов в начале или в конце)...
    Похоже, Ваш хостинг-провайдер чтит законы РФ и блокирует доступ к Telegram. Поздравляем.
    На эти случаи, аддон имеет возможность настройки прокси-сервера. Она локальная и распространяется только на запросы к Telegram API.
    В Setup → Options находим Telegram (/admin.php?options/groups/smodders_telegram/). Там будет опция Proxy connection string. В неё нам нужно ввести адрес прокси-сервера в определённой URL-схеме (для тех, кому нужны подробности - на странице настроек, прямо в описании данного пункта есть ссылочка).

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

    Свои сервера я стараюсь держать в максимальном аптайме, но иногда что-то идёт не по плану. О таких проблемах, когда хостинг-провайдер точно не причём (и даже клиент Telegram отказывается работать) можно сообщать мне напрямую в ЛС.
  9. В настройках аддона (Setup → Options находим Telegram (/admin.php?options/groups/smodders_telegram/)) включаем веб-хуки в идеале для того, чтобы все выполняемые действия с ботом (новые сообщения, например, к нему от кого-то; нужно если выбрали Direct способ авторизации) приходили на наш сервер самостоятельно.
    Если Вы до сих пор сидите без HTTPS, можете даже не пробовать включать веб-хуки. Telegram без HTTPS присылать веб-хуки откажется, и единственно верным решением для Вашей ситуации будет лонг-поллинг (крон-задача), но тут надо понимать, что по-умолчанию, cron-задачи обрабатываются XF только когда кто-то заходит на сайт, потому задумайтесь об установке хотя бы Lets Encrypt сертификата.
Готово. Можно проверить, всё ли работает. Хоть из админки.
Если выбран Direct способ, и бот Вам ничем не отвечает (читай: не работает) после установки веб-хуков (если Cron - нужно время, чтобы задача сработала), есть два возможных корня проблемы:
  1. Хостинг-провайдер чтит законы, и блокирует входящие запросы от Telegram.
    Честно, редко такое вижу (на ру-хостах, да), но оно есть. На такие случаи реализован "финт ушами" в виде проксирования веб-хуков.
    На GitHub опубликован скрипт, который все входящие POST-запросы с типом application/json "реплицирует" на полученный в GET-параметрах адрес. Такой простой, но действенный "финт ушами".
    Я его тоже захостил. Кому необходимо - значение для настройки https://one.oracle.kruzya.me/telegramWebHookProxy.php?_target={webHook}
  2. "Анти-ддос" сервисы (привет, CloudFlare).
    Решается добавлением IP-адресов Telegram в белый список на файрволе. Подсети IP-адресов, откуда приходят веб-хуки, опубликованы на сайте Telegram, но если Вам мешает РКН - 149.154.160.0/20 и 91.108.4.0/22 (актуально на 16.11.2019).

Вот и вся настройка. Всё не так сложно, как кажется.
По мере необходимости, пост буду дополнять.

Автор
Newdle
Скачивания
1
Просмотры
112
Первый выпуск
Обновление
Оценка
0.00 звёзд 0 оценок

Другие ресурсы пользователя Newdle

Похожие ресурсы

[Telegram] Core Newdle
Предоставляет возможность авторизоваться через Telegram
0.00 звёзд 0 оценок
Скачивания
0
Обновлено
[AL] Базовый пакет для AddonsLab - Xenforo 2
0.00 звёзд 0 оценок
Скачивания
1
Обновлено
основной аддон для объединения некоторых функций
0.00 звёзд 0 оценок
Скачивания
0
Обновлено
Библиотека, содержащая вспомогательные функции для надстроек [MMO] для Xenforo 2.
0.00 звёзд 0 оценок
Скачивания
4
Обновлено
Вспомогательное дополнение
0.00 звёзд 0 оценок
Скачивания
0
Обновлено
Теги
[telegram] core
Сверху Снизу
DarkWeb

DarkWeb Purchase

User upgrade! at

🔥 Upgrade Now