| ملخص | بوت تليجرام احترافي للإشعارات التلقائية حول المنشورات الجديدة من منتديات Discourse مع ملخصات تم إنشاؤها بواسطة الذكاء الاصطناعي باستخدام OpenAI GPT-4.1-nano | |
| رابط المستودع | GitHub - DigneZzZ/webhook_tg_bot | |
| دليل التثبيت | README_EN.md |
بوت تليجرام للويب هوك - إشعارات Discourse مدعومة بالذكاء الاصطناعي
ملاحظة: على الرغم من أن هذا ليس مكونًا إضافيًا تقليديًا لـ Discourse بل هو خدمة تكامل خارجية، إلا أنني لم أتمكن من العثور على فئة أكثر ملاءمة لمشاركة هذه الأداة المفيدة مع مجتمع Discourse. يعمل هذا البوت جنبًا إلى جنب مع منتدى Discourse الخاص بك لتوفير إمكانيات إشعارات محسّنة.
الميزات
تكامل Discourse
-
يعالج طلبات الويب لأحداث إنشاء الموضوع والمنشور
-
يدعم جميع أنواع محتوى Discourse
-
يجمع بيانات الموضوع والمنشور في رسائل موحدة
-
التحقق من توقيع طلب الويب للأمان (HMAC-SHA256)
تحليل محتوى الذكاء الاصطناعي
-
تكامل OpenAI GPT-4.1-nano لملخصات ذكية للمنشورات
-
تحليل محتوى مدرك للسياق مع تنظيف HTML
-
قوالب خاصة لأنواع المحتوى المختلفة
-
تصفية ومعالجة المحتوى تلقائيًا
تسليم متقدم عبر تليجرام
-
إرسال الإشعارات إلى الدردشة الرئيسية أو مواضيع المنتدى المحددة
-
تعيين الفئات - توجيه فئات Discourse المختلفة إلى مواضيع تليجرام مختلفة
-
بادئات رموز تعبيرية لأدوار المستخدمين (
مسؤول،
مشرف،
موظف، إلخ.) -
تنسيق رسائل HTML ذكي
تصفية وتحكم مرن
- مراقبة فئات محددة أو جميع الفئات
- تجاهل الفئات غير المرغوب فيها مع نظام أولوية
- حظر مستخدمي البوت (discobot، chatbot، مستخدمو النظام)
- إشعارات الأقسام المميزة مع تنبيهات الاشتراك
جاهز للإنتاج
- حاويات Docker مع فحوصات صحية
- خط أنابيب CI/CD لـ GitHub Actions
- تكامل Systemd لبدء التشغيل التلقائي
- تسجيل ومراقبة شاملة
- إيقاف تشغيل سلس ومعالجة الأخطاء
الإعداد
1. إعداد ويب هوك Discourse
-
انتقل إلى Admin → API → Webhooks
-
انقر فوق New Webhook
-
قم بالتكوين:
Payload URL: https://your-domain.com/webhook
Content Type: application/json
Secret: your_webhook_secret
Which events: Topic Event + Post Event
2. إعداد بوت تليجرام
-
أنشئ بوتًا عبر @BotFather
-
احصل على معرف الدردشة لمجموعتك/قناتك
-
قم بإعداد مواضيع المنتدى اختياريًا لتوجيه الفئات
3. تكوين البيئة
أنشئ ملف .env بالإعدادات المطلوبة (انظر التكوين الكامل في المستودع).
4. نشر Docker
# Quick installation
curl -fsSL https://raw.githubusercontent.com/dignezzz/webhook_tg_bot/main/install.sh -o install.sh
chmod +x install.sh
./install.sh install
5. إعداد الوكيل العكسي
لدعم طلبات الويب على نطاقك، قم بتكوين وكيل عكسي (nginx/Apache) لتوجيه طلبات الويب إلى حاوية البوت على المنفذ 8080.
مثال لتكوين nginx:
location /webhook {
proxy_pass http://localhost:8080/webhook;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
}
الإعدادات
| الاسم | الوصف | الافتراضي | مطلوب |
|---|---|---|---|
TELEGRAM_BOT_TOKEN |
رمز البوت من @BotFather | - | |
TELEGRAM_CHAT_ID |
معرف الدردشة المستهدفة / القناة | - | |
TELEGRAM_THREAD_ID |
معرف الموضوع الرئيسي (0 = الدردشة الرئيسية) | 0 | |
WEBHOOK_SECRET |
مفتاح سري للتحقق من التوقيع | - | |
WEBHOOK_PORT |
منفذ خادم الويب هوك | 8080 | |
WEBHOOK_PATH |
مسار نقطة نهاية الويب هوك | /webhook | |
OPENAI_API_KEY |
مفتاح OpenAI للملخصات | - | |
OPENAI_MODEL |
نموذج GPT المستخدم | gpt-4.1-nano | |
BASE_URL |
عنوان URL لمنتدى Discourse الخاص بك | - | |
MONITORED_CATEGORIES |
معرفات الفئات للمراقبة (مفصولة بفواصل) | all | |
IGNORED_CATEGORIES |
معرفات الفئات للتجاهل (مفصولة بفواصل) | none | |
IGNORED_USERS |
معرفات المستخدمين للتجاهل (مفصولة بفواصل) | none | |
PREMIUM_CATEGORIES |
معرفات الفئات المميزة (مفصولة بفواصل) | none |
تعيين الفئة إلى الموضوع (اختياري):
TELEGRAM_THREAD_ID_1=123456
THREAD_CATEGORIES_1=1,2,3
TELEGRAM_THREAD_ID_2=234567
THREAD_CATEGORIES_2=4,5
مثال لتنسيق الرسالة
👤 👑 قام المسؤول بإنشاء منشور جديد: دليل تكوين Docker
📋 يشارك المؤلف حلاً لمشكلة تكوين حاوية Docker ويشرح عملية خطوة بخطوة لإصلاح أخطاء الاتصال بقاعدة البيانات.
🔗 رابط الموضوع (https://forum.example.com/t/topic/123)
🏷 العلامات: #docker, #database, #troubleshooting
💎 هذا القسم متاح بالاشتراك فقط.
التثبيت والإدارة
يتضمن البوت برنامجًا نصيًا إداريًا لعمليات سهلة:
whtg status # التحقق من حالة البوت
whtg start # بدء تشغيل البوت
whtg stop # إيقاف تشغيل البوت
whtg restart # إعادة تشغيل البوت
whtg logs # عرض السجلات
whtg update # التحديث إلى أحدث إصدار
whtg uninstall # إزالة البوت
دعم اللغة
ملاحظة: حاليًا، جميع رسائل الواجهة والوثائق باللغة الروسية، ولكن سيتم إضافة دعم اللغة الإنجليزية في المستقبل القريب. يعمل البوت مع أي منتدى Discourse بغض النظر عن اللغة.
المتطلبات التقنية
- Docker و Docker Compose
- وكيل عكسي (nginx/Apache) لدعم نطاق الويب هوك
- مفتاح OpenAI API (اختياري، للملخصات بالذكاء الاصطناعي)
- شهادة HTTPS (موصى بها للإنتاج)
الدعم والمساهمات
- مستودع GitHub: GitHub - DigneZzZ/webhook_tg_bot
- المشاكل: الإبلاغ عن الأخطاء أو طلبات الميزات
- المناقشات: مناقشات المجتمع
الترخيص: MIT License