Bluesky для phpBB — безкоштовне розширення для phpBB 3.3.x від ButtonPusher, яке автоматично публікує нові теми форуму в Bluesky за допомогою офіційного API протоколу AT Protocol.
Розширення дозволяє адміністраторам форумів ділитися новими обговореннями в Bluesky без необхідності вручну копіювати заголовки тем, описи та посилання. Підтримуються схвалення модераторами, вибір форумів, налаштування уривків тексту, власні URL тем і автоматичні повторні спроби публікації.
Bluesky для phpBB працює як стандартне розширення phpBB і не потребує змін основних файлів або шаблонів форуму.
Можливості
- Автоматична публікація нових схвалених тем phpBB у Bluesky.
- Можливість публікації після схвалення модератором.
- Вибір форумів, із яких дозволено автоматичну публікацію.
- Автоматичне додавання заголовка теми та її URL.
- Необов'язковий текстовий уривок із першого повідомлення.
- Налаштування довжини уривка та мінімальної довжини першого повідомлення.
- Клікабельні посилання на теми з використанням механізму Bluesky Rich Text Facets.
- Картки попереднього перегляду вебсторінок із заголовком та описом теми.
- Підтримка стандартних URL phpBB, а також власних і SEO-дружніх адрес.
- Необов'язкові мовні позначки BCP 47 для опублікованих дописів.
- Черга публікацій із захистом від дублювання.
- Негайні спроби публікації та автоматичні повторні спроби через phpBB Cron.
- Налаштування максимальної кількості спроб публікації.
- Ручна публікація наявних схвалених тем через панель адміністратора (ACP).
- Безпечна повторна публікація, якщо раніше опублікований допис у Bluesky було видалено.
- Статистика публікацій, останні події черги та інформація про помилки в ACP.
- Підтримка стандартного сервісу Bluesky та сумісних власних серверів AT Protocol PDS.
- Переклади панелі адміністратора англійською, німецькою та українською мовами.
Як це працює
Коли на форумі phpBB створюється та схвалюється нова тема, Bluesky для phpBB додає її до черги публікацій. Після цього розширення намагається опублікувати відповідний допис у налаштованому обліковому записі Bluesky.
Якщо на форумі використовується попередня модерація повідомлень, розширення може зачекати, доки нову тему схвалить модератор. Теми з виключених форумів, а також теми, які не відповідають налаштованій мінімальній довжині тексту, автоматично не публікуються.
Кожен допис у Bluesky містить заголовок теми форуму та посилання на оригінальне обговорення. За бажанням можна також додати уривок із першого повідомлення.
Опублікований допис спрямовує відвідувачів назад на форум phpBB, де вони можуть прочитати повне обговорення та взяти в ньому участь відповідно до встановлених прав доступу.
Вміст дописів у Bluesky
Розширення формує дописи на основі наявної інформації про теми phpBB. Заголовок теми використовується як основний текст, після якого можуть додаватися необов'язковий уривок і URL теми.
Із текстового уривка видаляється форматування BBCode та HTML, завдяки чому утворюється звичайний текст, придатний для публікації в Bluesky. За потреби остаточний текст скорочується відповідно до обмеження платформи у 300 символів.
URL теми додається як клікабельне посилання з використанням Rich Text Facets. Розширення також створює картку попереднього перегляду вебсторінки типу app.bsky.embed.external, що містить URL теми, заголовок та опис.
Текстові уривки можна незалежно вмикати або вимикати. Максимальна довжина уривка налаштовується в межах від 40 до 220 символів. Фактично опублікований уривок може бути коротшим, щоб залишилося достатньо місця для заголовка та URL.
Вибір форумів і правила публікації
Адміністратори можуть самостійно визначати, з яких форумів phpBB дозволено автоматично публікувати нові теми в Bluesky.
Якщо жодного форуму не вибрано, автоматична публікація дозволяється для всіх форумів, у яких можна створювати теми. З міркувань конфіденційності адміністраторам рекомендується явно вибирати лише ті форуми, теми яких призначені для публічного поширення. Це особливо важливо, якщо на сайті є приватні розділи або форуми з обмеженим доступом.
Також можна налаштувати мінімальну довжину першого повідомлення. Це допомагає уникнути автоматичного поширення тем, що містять лише кілька слів. Значення 0 вимикає це обмеження.
Розширення публікує нові теми, а не кожну відповідь або подальше оновлення обговорення.
URL тем і Clean URLs
За замовчуванням Bluesky для phpBB створює стандартні посилання на теми phpBB, наприклад:
https://example.com/forum/viewtopic.php?t=123
Адміністратори, які використовують альтернативну структуру адрес, можуть налаштувати власний шаблон URL тем. Доступні такі змінні:
{board_url}– URL форуму phpBB.{topic_id}– ідентифікатор теми.{post_id}– ідентифікатор першого повідомлення.
Наприклад, для форумів, які використовують ButtonPusher Clean URLs, можна налаштувати такий шаблон:
t{topic_id}
У результаті буде сформовано адресу на зразок:
https://example.com/forum/t123
Відносні шаблони URL автоматично обробляються з урахуванням основної адреси форуму phpBB. Підтримка власних адрес також дозволяє використовувати розширення з іншими рішеннями для створення SEO-дружніх URL.
Черга публікацій та автоматичні повторні спроби
Bluesky для phpBB використовує чергу публікацій, що зберігається в базі даних, для відстеження спроб публікації та їхніх результатів.
Коли тема потрапляє до черги, розширення намагається негайно її опублікувати, якщо обліковий запис Bluesky налаштовано. Якщо запит до API завершується помилкою, тема залишається в черзі та може бути автоматично опублікована під час наступних запусків phpBB Cron.
Інтервали між повторними спробами поступово збільшуються. Це допомагає уникнути надмірної кількості запитів у разі тимчасових проблем зі з'єднанням або перебоїв у роботі сервісу Bluesky.
Максимальну кількість спроб можна налаштувати. Після досягнення встановленого ліміту публікація позначається як невдала. Адміністратори можуть скинути статус невдалих записів через ACP, щоб дозволити нову спробу.
Панель адміністратора відображає кількість записів, що очікують публікації, успішно опублікованих, пропущених і невдалих, а також останні записи черги та доступні повідомлення про помилки.
Захист від дублікатів і ручна публікація
Кожна опублікована тема відстежується за її ідентифікатором у phpBB. Це запобігає повторній автоматичній публікації тієї самої теми.
Адміністратори також можуть вручну опублікувати наявну схвалену тему, ввівши її ідентифікатор у панелі адміністратора. Ручну публікацію можна використовувати незалежно від налаштувань автоматичного вибору форумів та мінімальної довжини тексту.
Якщо тему вже було опубліковано, розширення перевіряє, чи існує відповідний запис у Bluesky.
Якщо оригінальний допис у Bluesky досі доступний, дублікат не створюється. Якщо допис було видалено, тему можна опублікувати повторно.
Автентифікація Bluesky
Розширення використовує офіційні кінцеві точки AT Protocol XRPC для автентифікації та публікації дописів.
Адміністратори повинні налаштувати свій ідентифікатор Bluesky (handle) та окремий пароль застосунку Bluesky (App Password). Основний пароль облікового запису Bluesky ніколи не слід вводити в налаштуваннях розширення.
Стандартна адреса сервісу — https://bsky.social. Також можна налаштувати власний HTTPS-сервер Personal Data Server (PDS), якщо він підтримує необхідні кінцеві точки AT Protocol.
Пароль застосунку зберігається в конфігураційній базі даних phpBB. Тому адміністраторам слід обмежувати доступ до бази даних і панелі адміністратора та використовувати окремий пароль застосунку, який можна відкликати незалежно від основного пароля.
Системні вимоги
- phpBB 3.3.0 або новіша версія в межах гілки phpBB 3.x.
- PHP 7.2 або новіша версія.
- Обліковий запис Bluesky із паролем застосунку (App Password).
- Можливість вихідних HTTPS-з'єднань із налаштованим сервісом Bluesky або сервером AT Protocol PDS.
- Працюючий механізм phpBB Cron для автоматичних повторних спроб публікації.
Доступні мови
Розширення містить мовні файли для панелі адміністратора англійською, німецькою та українською мовами.
Встановлення
- Завантажте архів розширення.
- Розпакуйте його до каталогу вашого форуму phpBB так, щоб файли розширення розташовувалися за шляхом:
ext/buttonpusher/bluesky/ - Відкрийте панель адміністратора phpBB (ACP).
- Перейдіть до розділу Налаштування → Керування розширеннями.
- Знайдіть ButtonPusher Bluesky for phpBB і натисніть Увімкнути.
- Відкрийте Розширення → Bluesky для phpBB → Налаштування Bluesky.
- Введіть свій ідентифікатор Bluesky (handle) та пароль застосунку.
- Натисніть Зберегти та перевірити з'єднання, щоб перевірити автентифікацію.
- Увімкніть автоматичну публікацію та налаштуйте необхідні правила.
Жодних змін основних файлів або шаблонів phpBB не потрібно. Під час встановлення розширення створює власну таблицю бази даних для черги публікацій.
Налаштування в панелі адміністратора
Панель адміністратора дозволяє налаштовувати обліковий запис Bluesky, автоматичну публікацію, дозволені форуми, схвалення модераторами, довжину текстових уривків, мінімальну довжину першого повідомлення, кількість спроб публікації, шаблони URL тем і мовні позначки дописів.
Адміністратори можуть перевіряти з'єднання з Bluesky, вручну публікувати схвалені теми, повторювати невдалі спроби публікації та переглядати останні події черги без редагування конфігураційних файлів.
Версія 1.0.0
- Перший публічний випуск.
- Додано автоматичну публікацію нових схвалених тем phpBB у Bluesky.
- Додано підтримку публікації після схвалення модератором.
- Додано налаштування вибору форумів і мінімальної довжини першого повідомлення.
- Додано необов'язкові уривки з першого повідомлення та автоматичне скорочення тексту.
- Додано клікабельні URL Facets і картки попереднього перегляду вебсторінок.
- Додано власні шаблони URL тем для Clean URLs і SEO-дружніх адрес.
- Додано необов'язкові мовні позначки BCP 47.
- Додано чергу публікацій із захистом від дублікатів та автоматичними повторними спробами.
- Додано ручну публікацію та безпечну повторну публікацію видалених дописів Bluesky.
- Додано статистику черги, статуси публікацій та керування повторними спробами в ACP.
- Додано мовні файли англійською, німецькою та українською мовами.
Завантаження
Завантажити Bluesky для phpBB 1.0.0
Поточна версія: 1.0.0
Ліцензія: GNU General Public License v2.0 only (GPL-2.0-only).
Коментарі (0)