Уважаемые пользователи!
C 7 ноября 2020 года phpBB Group прекратила выпуск обновлений и завершила дальнейшее развитие phpBB версии 3.2.
С 1 августа 2024 года phpBB Group прекращает поддержку phpBB 3.2 на официальном сайте.
Сайт официальной русской поддержки phpBB Guru продолжит поддержку phpBB 3.2 до 31 декабря 2024 года.
С учетом этого, настоятельно рекомендуется обновить конференции до версии 3.3.

[3.3] [DEV] Telegram Bridge

Здесь авторы могут постить бета-версии своих расширений для phpBB. Внимание! Не устанавливайте бета-версии расширений на работающие форумы!
Правила форума
Местная Конституция | Шаблон запроса | Документация (phpBB3) | Мини [FAQ] по phpBB3.1.x/3.2.x | FAQ | Внимание! Прежде чем создать тему - прочти! | Как задавать вопросы | Как устанавливать расширения

Ваш вопрос может быть удален без объяснения причин, если на него есть ответы по приведённым ссылкам (а вы рискуете получить предупреждение ;) ).

Внимание! Не устанавливайте бета-версии расширений на работающие форумы!
Аватара пользователя
ReXtor
phpBB 2.0.0
Сообщения: 232
Стаж: 1 год 7 месяцев
Откуда: Сибирь
Благодарил (а): 66 раз
Поблагодарили: 75 раз

[3.3] [DEV] Telegram Bridge

Сообщение ReXtor »

Название расширения: Telegram Bridge
Автор: mbld
Описание расширения: Allows to browse through the forum, send topics and posts and receive notifications via telegram. // Позволяет просматривать форум, отправлять темы и сообщения и получать уведомления через telegram.
Скачать: https://github.com/D-MBLD/phpbb-telegram-bridge/
Язык: EN and DE (admin page in EN only)
Обсуждение на phpbb.com: https://www.phpbb.com/community/viewtopic.php?t=2636856
Скриншоты:
Скрытый текст
Изображение
Изображение
Установка:
  1. Скачать архив и расположить в eb\telegram чтобы путь до composer.json получился папка_форума\ext\eb\telegram\composer.json
  2. Включить расширение в Админка > Персонализация > Управление расширениями: (Telegram Bridge)
  3. Настроить расширение в Админка > Настройка расширений > Telegram Bridge Module > Telegram Bridge Settings:
    • Forum User: логин пользователя для бота (создаете сами)
    • Passwort of the above user: пароль для созданного пользователя (тот который сделали при его создании)
    • Telegram Bot-Token: токен бота (получаете через @BotFather в Telegram
    • Secret string for webhook requests: секретная строка (набор символов a-Z 0-9 для webhook, придумываете сами)
  4. Сохраняете настройки
  5. Теперь в пункте URL for webhook registration: должна появится ссылка вида https://api.telegram.org/bot{ВАШ_ТОКЕН}/setWebhook?url=ваш_сайт/telegram/webhook&secret_token={ВАШ_СЕКРЕТ}
    • Здесь следует убедиться, что ссылка имеет в себе ваш_сайт/telegram, а не ваш_сайт//telegram (два слеша). Если все в порядке - идем дальше, если нет см. ниже
  6. Открываем указанную ссылку (однократно) для регистрации вебхука для бота
  7. Первичная настройка завершена. При необходимости задаем остальные настройки.
Проверка бота:
  1. В Telegram находите своего бота и пишете ему /start или любое сообщение
  2. Должен прийти ответ:
    This service can be used by registered members of {НАЗВАНИЕ_КОНФЕРЕНЦИИ} only.
    If you are a member, you must enter your telegram id ({ВАШ_ЧИСЛОВОЙ_ID}) into your forums profile in order to use the service.
    Afterwards you should also select the events for which you want to be notified via telegram in your notification settings.
Пользовательские настройки:
В Личный раздел > Профиль > Личные данные необходимо указать свой ЦИФРОВОЙ Telegram ID в поле Your Telegram ID и сохранить настройки

Замеченные ошибки и недоработки:
  • Два слеша в ссылке на регистрацию вебхука
    Если два слеша в ссылке на регистрацию вебхука 
    Открыть info_acp_telegram.php в language\en
    Найти:

    Код: Выделить всё

    	'ACP_TELEGRAM_WEBHOOK_TEMPLATE' => 'https://api.telegram.org/bot%s/setWebhook?url=%s/telegram/webhook&secret_token=%s',
    Заменить на:

    Код: Выделить всё

    	'ACP_TELEGRAM_WEBHOOK_TEMPLATE' => 'https://api.telegram.org/bot%s/setWebhook?url=%stelegram/webhook&secret_token=%s',
    Либо второй вариант - скопировать ссылку на регистрацию вебхука, вручную убрать лишний слеш и перейти по ней.
  • Только числовой Telegram ID. Нормальный буквенный указать нельзя (по крайней мере пока что). Где в самом Telegram его посмотреть я по-быстрому найти не смог. Но при обращении к боту - он его вам сообщает.
Перевод на RU: Запрос перевода для расширения
Последний раз редактировалось ReXtor 18.02.2023 6:39, всего редактировалось 1 раз.
Аватара пользователя
ReXtor
phpBB 2.0.0
Сообщения: 232
Стаж: 1 год 7 месяцев
Откуда: Сибирь
Благодарил (а): 66 раз
Поблагодарили: 75 раз

Re: [3.3] [DEV] Telegram Bridge

Сообщение ReXtor »

Еще замеченная ошибка - при создании темы через бота белиберда в заголовке таблицы вместо "Последнее сообщение"
2023-02-18_12-05-17.png
А должно быть:
2023-02-18_12-18-43.png
Также проблема с цветом ника. Но даже если отключить расширение он в норму не приходит:
2023-02-18_12-21-31.png

Автору сообщил об этом
У вас нет необходимых прав для просмотра вложений в этом сообщении.
[phpBB 3.3.8 | Prolight | STK 1.0.19-dev] _ [PHP 7.4.28 | MySQL(i) 5.7.27-30]
Аватара пользователя
ReXtor
phpBB 2.0.0
Сообщения: 232
Стаж: 1 год 7 месяцев
Откуда: Сибирь
Благодарил (а): 66 раз
Поблагодарили: 75 раз

Re: [3.3] [DEV] Telegram Bridge

Сообщение ReXtor »

Автор сообщил, что исправил ошибки со ссылкой на вебхук в админке и в заголовке таблицы просмотра форумов. Обновления на гитхабе.

Ошибка с двойным слешем возникла из-за того, что у меня форум в корне и в "путь к конференции" указан просто слеш /. Собственно вот он и подставлялся вторым видимо. Также такая ошибка могла возникнуть если в пути к форуму указан слеш в конце.

Если кто делал правки в info_acp_telegram.php, то следует вернуть как было.
[phpBB 3.3.8 | Prolight | STK 1.0.19-dev] _ [PHP 7.4.28 | MySQL(i) 5.7.27-30]
Аватара пользователя
southklad
phpBB 3.1.0 RC2
Сообщения: 3232
Стаж: 12 лет 3 месяца
Благодарил (а): 704 раза
Поблагодарили: 152 раза

Re: [3.3] [DEV] Telegram Bridge

Сообщение southklad »

ReXtor писал(а): 18.02.2023 6:37 Только числовой Telegram ID. Нормальный буквенный указать нельзя (по крайней мере пока что). Где в самом Telegram его посмотреть я по-быстрому найти не смог. Но при обращении к боту - он его вам сообщает.
Так вроде всегда было, что нужен именно числовой. У меня стоит расширение уведомлений, тоже нужен именно числовой
Изображение
Аватара пользователя
ReXtor
phpBB 2.0.0
Сообщения: 232
Стаж: 1 год 7 месяцев
Откуда: Сибирь
Благодарил (а): 66 раз
Поблагодарили: 75 раз

Re: [3.3] [DEV] Telegram Bridge

Сообщение ReXtor »

igorbond писал(а): 18.02.2023 19:38 Так вроде всегда было, что нужен именно числовой. У меня стоит расширение уведомлений, тоже нужен именно числовой
Я сходу не смог найти в клиенте (как в мобильном, так и в десктоп) где этот самый числовой отображается. Я помню что раньше оно было, но теперь вот уже нет. Свой числовой ID я узнал из сообщения от бота, хах.

Но автор сказал что возможно добавит поддержку нормальных username. Правда пока не понятно правильно ли он понял о чем речь, а то везде называет его name вместо username.
igorbond писал(а): 18.02.2023 19:38 тоже нужен именно числовой
Кошмар.

Надо попробовать завести новый аккаунт без username, может там числовой ID отображается. Но при установке username его отображения уже точно нет.
[phpBB 3.3.8 | Prolight | STK 1.0.19-dev] _ [PHP 7.4.28 | MySQL(i) 5.7.27-30]
Аватара пользователя
southklad
phpBB 3.1.0 RC2
Сообщения: 3232
Стаж: 12 лет 3 месяца
Благодарил (а): 704 раза
Поблагодарили: 152 раза

Re: [3.3] [DEV] Telegram Bridge

Сообщение southklad »

ReXtor писал(а): 19.02.2023 1:12 узнал из сообщения от бота
Так его и можно получить именно от бота, по другому никак.
Изображение
Аватара пользователя
ReXtor
phpBB 2.0.0
Сообщения: 232
Стаж: 1 год 7 месяцев
Откуда: Сибирь
Благодарил (а): 66 раз
Поблагодарили: 75 раз

Re: [3.3] [DEV] Telegram Bridge

Сообщение ReXtor »

igorbond писал(а): 19.02.2023 19:53 Так его и можно получить именно от бота, по другому никак.
Да, я поискал на эту тему - разрабы телеги убрали отображение ID в своих клиентах в какой-то момент. А теперь представь как было гемморно найти ID группы, которую создал для получения debug-сообщений от расширения (echo-режим)... И не просто группы, а еще и частной. Сначала пришлось перепробовать несколько разных ботов найденных поиском заточенных на вывод ID. Первый оказался уже не рабочим. Второй не захотел сообщать ID группы, только личный выдавал упорно. С третьей попытки это получилось и нужный ID был найден, чтобы вписать его в настройки расширения в админке...

Надо автору расширения предложить добавить функционал по извлечению ID при добавлении бота в канал/группу. Чтобы к сторонним не обращаться.
[phpBB 3.3.8 | Prolight | STK 1.0.19-dev] _ [PHP 7.4.28 | MySQL(i) 5.7.27-30]
Аватара пользователя
vit_pro
phpBB 1.4.4
Сообщения: 116
Стаж: 4 года 2 месяца
Благодарил (а): 51 раз
Поблагодарили: 9 раз

Re: [3.3] [DEV] Telegram Bridge

Сообщение vit_pro »

Приветствую!
Столкнулся с парой проблем при настройке. может есть идеи?
1. Passwort of the above user: пароль для созданного пользователя (тот который сделали при его создании). У меня при создании нет такой опции как пароль. Логин создал, получил ответ Done! Congratulations on your new bot. You will find it at ...ссылка на страницу бота. Перехожу, клик, вход в телеграм. Где там пароли то?
2. Бот активен, токен, и id прописаны, но нет сообщений на подписанные темы в телеграме. В настройках галочки установил на все, что должно отсылаться.
3. И вот при отправке личного сообщения на форуме, вылетает ошибка:
Screen.png

Код: Выделить всё

Общая ошибка
SQL ERROR [ mysqli ]

Table 'my_db.phpbb_eb_telegram_chat' doesn't exist [1146]

SQL

SELECT chat_id, message_id, forum_id, topic_id, state, title FROM phpbb_eb_telegram_chat

BACKTRACE

FILE: (not given by php)
LINE: (not given by php)
CALL: msg_handler()

FILE: [ROOT]/phpbb/db/driver/driver.php
LINE: 1023
CALL: trigger_error()

FILE: [ROOT]/phpbb/db/driver/mysqli.php
LINE: 202
CALL: phpbb\db\driver\driver->sql_error()

FILE: [ROOT]/phpbb/db/driver/factory.php
LINE: 345
CALL: phpbb\db\driver\mysqli->sql_query()

FILE: [ROOT]/ext/eb/telegram/core/forum_api.php
LINE: 289
CALL: phpbb\db\driver\factory->sql_query()

FILE: [ROOT]/ext/eb/telegram/notification/method/telegram.php
LINE: 121
CALL: eb\telegram\core\forum_api->select_telegram_chat_state()

FILE: [ROOT]/phpbb/notification/manager.php
LINE: 430
CALL: eb\telegram\notification\method\telegram->notify()

FILE: [ROOT]/phpbb/notification/manager.php
LINE: 322
CALL: phpbb\notification\manager->add_notifications_for_users()

FILE: [ROOT]/includes/functions_privmsgs.php
LINE: 1928
CALL: phpbb\notification\manager->add_notifications()

FILE: [ROOT]/includes/ucp/ucp_pm_compose.php
LINE: 970
CALL: submit_pm()

FILE: [ROOT]/includes/ucp/ucp_pm.php
LINE: 114
CALL: compose_pm()

FILE: [ROOT]/includes/functions_module.php
LINE: 676
CALL: ucp_pm->main()

FILE: [ROOT]/ucp.php
LINE: 440
CALL: p_master->load_active()
Даже не знаю куда рыть :?
У вас нет необходимых прав для просмотра вложений в этом сообщении.
Аватара пользователя
Татьяна5
Поддержка
Поддержка
Сообщения: 12429
Стаж: 12 лет 8 месяцев
Благодарил (а): 166 раз
Поблагодарили: 2478 раз

Re: [3.3] [DEV] Telegram Bridge

Сообщение Татьяна5 »

vit_pro, для начала - в сторону переустановки расширения с удалением данных. Оно говорит, что таблицы в БД нет
Если не поможет - писать автору. (Кто его знает, какую таблицу он хотел создать, но не создал)
Аватара пользователя
vit_pro
phpBB 1.4.4
Сообщения: 116
Стаж: 4 года 2 месяца
Благодарил (а): 51 раз
Поблагодарили: 9 раз

Re: [3.3] [DEV] Telegram Bridge

Сообщение vit_pro »

Татьяна5 писал(а): 02.03.2023 19:07 vit_pro, для начала - в сторону переустановки расширения с удалением данных. Оно говорит, что таблицы в БД нет
Если не поможет - писать автору. (Кто его знает, какую таблицу он хотел создать, но не создал)
уже переустанавливал, результат тот же. Быть может с какими либо расширениями конфликтует...позже посмотрю
Аватара пользователя
ReXtor
phpBB 2.0.0
Сообщения: 232
Стаж: 1 год 7 месяцев
Откуда: Сибирь
Благодарил (а): 66 раз
Поблагодарили: 75 раз

Re: [3.3] [DEV] Telegram Bridge

Сообщение ReXtor »

vit_pro писал(а): 02.03.2023 10:29 Passwort of the above user
Сначала следует обновить версию расширения. В текущей версии уже не используется отдельно создаваемый пользователь под нужды бота.:
2023-03-04_03-18-34.png
Обновлять с гитхаб. Перевод на русский: [Русский перевод расширения] Telegram bridge
У вас нет необходимых прав для просмотра вложений в этом сообщении.
[phpBB 3.3.8 | Prolight | STK 1.0.19-dev] _ [PHP 7.4.28 | MySQL(i) 5.7.27-30]
Аватара пользователя
ReXtor
phpBB 2.0.0
Сообщения: 232
Стаж: 1 год 7 месяцев
Откуда: Сибирь
Благодарил (а): 66 раз
Поблагодарили: 75 раз

Re: [3.3] [DEV] Telegram Bridge

Сообщение ReXtor »

Автор немного изменил логику работы расширения.

Установка:
  1. Скачать архив и расположить в eb\telegram чтобы путь до composer.json получился папка_форума\ext\eb\telegram\composer.json
  2. Включить расширение в Админка > Персонализация > Управление расширениями: (Telegram Bridge)
  3. Настроить расширение в Админка > Настройка расширений > Telegram Bridge Module > Telegram Bridge Settings:
    • Telegram Bot-Token: токен бота (получаете через @BotFather в Telegram
    • Secret string for webhook requests: секретная строка (набор символов a-Z 0-9 для webhook, придумываете сами)
  4. Сохраняете настройки
  5. Теперь в пункте URL for webhook registration: должна появится ссылка вида https://api.telegram.org/bot{ВАШ_ТОКЕН}/setWebhook?url=ваш_сайт/telegram/webhook&secret_token={ВАШ_СЕКРЕТ}
  6. Открываем указанную ссылку (однократно) для регистрации вебхука для бота
  7. Первичная настройка завершена. При необходимости задаем остальные настройки.
[phpBB 3.3.8 | Prolight | STK 1.0.19-dev] _ [PHP 7.4.28 | MySQL(i) 5.7.27-30]
Аватара пользователя
ReXtor
phpBB 2.0.0
Сообщения: 232
Стаж: 1 год 7 месяцев
Откуда: Сибирь
Благодарил (а): 66 раз
Поблагодарили: 75 раз

Re: [3.3] [DEV] Telegram Bridge

Сообщение ReXtor »

vit_pro писал(а): 02.03.2023 10:29 Бот активен, токен, и id прописаны, но нет сообщений на подписанные темы в телеграме. В настройках галочки установил на все, что должно отсылаться.
Есть подозрение что было пропущено подтверждение Telegram ID через почту. Порядок действий таков:
  1. Настроили расширение в админке
  2. Написали боту любое сообщение что-бы получить свой ID
  3. Ввели ID в UCP
  4. Снова написали боту - попросит подтвердить по почте
  5. Нажали кнопку, получили письмо
  6. Ввели код из письма в личку боту
  7. Все.
Я сейчас проверил данный порядок, плюс включил уведомление о подписках и подписался на тему, другим пользователем оставил там сообщение - все сработало. Сообщение от бота пришло:
2023-03-04_03-59-40.png
vit_pro писал(а): 02.03.2023 10:29 И вот при отправке личного сообщения на форуме, вылетает ошибка:
Также проверил, все работает без обишков:
2023-03-04_04-02-43.png
У вас нет необходимых прав для просмотра вложений в этом сообщении.
[phpBB 3.3.8 | Prolight | STK 1.0.19-dev] _ [PHP 7.4.28 | MySQL(i) 5.7.27-30]
Аватара пользователя
vit_pro
phpBB 1.4.4
Сообщения: 116
Стаж: 4 года 2 месяца
Благодарил (а): 51 раз
Поблагодарили: 9 раз

Re: [3.3] [DEV] Telegram Bridge

Сообщение vit_pro »

ReXtor, установку и первичную настройку именно так выполняю. Версию качаю с гита.
ReXtor писал(а): 03.03.2023 22:00 Есть подозрение что было пропущено подтверждение Telegram ID через почту. Порядок действий таков:
а вот этого у меня вообще не было, я ввожу старт и все.
Благодарю, попробую переустановить по выше описанной схеме, отпишусь.
Аватара пользователя
ReXtor
phpBB 2.0.0
Сообщения: 232
Стаж: 1 год 7 месяцев
Откуда: Сибирь
Благодарил (а): 66 раз
Поблагодарили: 75 раз

Re: [3.3] [DEV] Telegram Bridge

Сообщение ReXtor »

vit_pro писал(а): 04.03.2023 7:43 а вот этого у меня вообще не было, я ввожу старт и все.
В самом начале (когда автор только опубликовался на phpBB) этот функционал еще не работал. Я переводить (и тестировать) расширение начал еще тогда и сразу заметил что в языковых переменных подтверждение по почте заявлено, но фактически его не было. Автору сообщил и он исправил это практически сразу.

При обновлениях нужно смотреть не только на версию расширения, но и на даты вносимых правок. Для DEV, в идеале, следует скачивать и устанавливать с ноля по схеме: отключить расширение, стереть его данные, удалить папку расширения с сервера, закачать, установить и настроить заново. Данные вебхука и секретстринга предварительно сохранять где-нибудь, чтобы не возиться каждый раз с перенастройкой бота.
[phpBB 3.3.8 | Prolight | STK 1.0.19-dev] _ [PHP 7.4.28 | MySQL(i) 5.7.27-30]

Вернуться в «Бета-версии расширений для phpBB»