Вы используете устаревший браузер. Этот и другие сайты могут отображаться в нём некорректно. Вам необходимо обновить браузер или попробовать использовать другой.
О[А по щам?]тительная история.
У человека выше плагин был скачан с Гитхаба, не с релизов. В итоге отсутствовали две папки (_data и vendor).
Движок при инициализации композера, видимо, как только спотыкается, перестает ходить по оставшимся плагинам для загрузки внешних библиотек. Мой плагин был первее, чем тот, что предназначается для хранения файлов в облаке, из-за чего всё и шло по одному месту.
На будущее.
Если у Вас нет проверенного аккаунта, и Вы хотите скачать плагин, качайте с правильного места:
Послушай, мил человек, качал на гитхабе, локализацию брал точно не тут, но без копирайтов, кто их резал мне не ведомо и выяснять - я не сыщик (в своё время мы на вбсуппорте всей бандой за удаление копирайтов по ушам давали, так что это точно не мой случай)........ так что не гавкай попусту!
Реализована своя обёртка над \XF::asVisitor(), который, помимо установки активного пользователя, так же изменяет язык и стиль. Это необходимо для внутреннего функционала аддона и его модулей.
Как итог, исправлена назойливая "фича", когда бот отправлял сообщения для стандартного языка для той же авторизации: Посмотреть вложение 113989
Здравствуйте.
Скажите пожалуйста, что-то еще нужно кроме API от бота в настройках, чтобы работала авторизация?
Создал бота, получил API ключ, добавил ключ в настройки, кнопка авторизации появилась, но вот ошибка
CrazyHackGUT, окей. Просто стоял последний, а недавно начало ошибками сыпать. Попробовал все кроме первого - то же самое. Сейчас прописал первый сервер - всё ок.
минибаг репорт.
У меня Имя профиля ТГ содержит флаг (смайлик) и французский символ "é", фамилия - пустое поле.
не давало присоединить аккаунт ссылаясь на инвалид телеграмм.
Telegram received invalid hash. Please, try again.
Убрал с имени флаг и символ - все заработало. Вернул обратно D
Подробный разбор установки 2.х
С 1.х многое поменялось. Что-то стало проще, что-то - сложнее. Мне показалось, что будет разумнее написать один большой пост про установку и ссылаться, в случае чего, на него. Ну и ссылку на него в описание впилить...
В этом "подробном" разборе будет опущена процедура скачивания архива, его распаковки и загрузки на удалённый сервер посредством любого протокола (FTP / SFTP / WebDav) с последующим нажатием кнопки Установить в админке. Это такие банальные вещи, которые надо уже уметь делать без явных уточнений, что и как.
Переходим в Telegram и через поиск находим "отца ботов" (@BotFather).
В диалоге с ним нажимаем Start.
В ответ, отец напишет Вам, что он помогает с созданием и управление ботами в Telegram, и выведет перечень всех команд, которые он для этого знает. Нас интересует /newbot. Нажимаем на неё прямо в сообщении.
В ответ последовательно сообщаем отцу имя нашего бота и его имя пользователя.
В ответ, отец пришлёт нам токен бота. На скриншоте ниже, его местоположение будет выделено красной рамочкой. Посмотреть вложение 109570
Обратите внимание на предостережение отца ботов касательно токена. Никому его [токен] не показывайте! Это важно!
Для возможности использовать авторизацию через Telegram, нам так же нужно сообщить отцу ботов, на каком домене располагается наш сайт. Для этого, мы либо листаем в диалоге выше, находим команду /setdomain и нажимаем левой кнопкой мыши по ней, либо вводим её вручную в чате.
В вылезшей клавиатуре выбираем нашего бота и отправляем в ответ чисто домен (без протокола; пример ниже).
Клавиатура может вылезть, а может и не вылезть.
Своего первого бота я делал в 2016 году, и с тех пор утекло много воды. Всех деталей я не помню.
Но, на данный момент, на моём аккаунте приличное кол-во аккаунтов ботов (не менее 10 штук), и я всегда вижу эту клавиатуру. Вылезает ли она, когда бот один - я, соответственно, не помню.
На этом наши приготовления бота завершены. Если необходимо - можете так же через отца задать аватарку (/setuserpic) или изменить имя (/setname). Изменить тег бота не представляется возможным на данный момент. Если Вы на этом этапе резко осознали, что выбрали плохой тег боту - самое время удалить бота (/deletebot) и сделать его с нуля.
Переходим на форум и заходим в панель администратора (/admin.php). В меню сбоку заходим в Setup → Service providers → Connected accounts, в списке находим Telegram и нажимаем левой кнопкой мыши по нему.
В отличие от 1.х, где нам нужно было ввести и имя бота в определенном формате (без символа собаки) и токен, в 2.х теперь нужен только токен. Его и заполняем, выбираем способ авторизации и нажимаем Save.
Похоже, Ваш хостинг-провайдер чтит законы РФ и блокирует доступ к Telegram. Поздравляем.
На эти случаи, аддон имеет возможность настройки прокси-сервера. Она локальная и распространяется только на запросы к Telegram API.
В Setup → Options находим Telegram (/admin.php?options/groups/smodders_telegram/). Там будет опция Proxy connection string. В неё нам нужно ввести адрес прокси-сервера в определённой URL-схеме (для тех, кому нужны подробности - на странице настроек, прямо в описании данного пункта есть ссылочка).
Пара моих прокси, сделанных как раз на такие случаи (сразу в формате, который принимает аддон):
[*]Тут можно напороться снова на хостинг-провайдера, который блокирует запросы к неизвестным портам.
Чтож, тут можно написать в техническую поддержку с просьбой открыть исходящие TCP-соединения на порт выбранного прокси-сервера.
Свои сервера я стараюсь держать в максимальном аптайме, но иногда что-то идёт не по плану. О таких проблемах, когда хостинг-провайдер точно не причём (и даже клиент Telegram отказывается работать) можно сообщать мне напрямую в ЛС.
В настройках аддона (Setup → Options находим Telegram (/admin.php?options/groups/smodders_telegram/)) включаем веб-хуки в идеале для того, чтобы все выполняемые действия с ботом (новые сообщения, например, к нему от кого-то; нужно если выбрали Direct способ авторизации) приходили на наш сервер самостоятельно.
Если Вы до сих пор сидите без HTTPS, можете даже не пробовать включать веб-хуки. Telegram без HTTPS присылать веб-хуки откажется, и единственно верным решением для Вашей ситуации будет лонг-поллинг (крон-задача), но тут надо понимать, что по-умолчанию, cron-задачи обрабатываются XF только когда кто-то заходит на сайт, потому задумайтесь об установке хотя бы Lets Encrypt сертификата.
Готово. Можно проверить, всё ли работает. Хоть из админки.
Если выбран Direct способ, и бот Вам ничем не отвечает (читай: не работает) после установки веб-хуков (если Cron - нужно время, чтобы задача сработала), есть два возможных корня проблемы:
Хостинг-провайдер чтит законы, и блокирует входящие запросы от Telegram.
Честно, редко такое вижу (на ру-хостах, да), но оно есть. На такие случаи реализован "финт ушами" в виде проксирования веб-хуков.
У Вас недостаточно прав для просмотра ссылок.
Вход или Регистрация
, который все входящие POST-запросы с типом application/json "реплицирует" на полученный в GET-параметрах адрес. Такой простой, но действенный "финт ушами".
Я его тоже захостил. Кому необходимо - значение для настройки https://one.oracle.kruzya.me/telegramWebHookProxy.php?_target={webHook}
"Анти-ддос" сервисы (привет, CloudFlare).
Решается добавлением IP-адресов Telegram в белый список на файрволе. Подсети IP-адресов, откуда приходят веб-хуки,
У Вас недостаточно прав для просмотра ссылок.
Вход или Регистрация
, но если Вам мешает РКН - 149.154.160.0/20 и 91.108.4.0/22 (актуально на 16.11.2019).
Вот и вся настройка. Всё не так сложно, как кажется.
По мере необходимости, пост буду дополнять.