معلومات Webhook API

نقاط النهاية (Endpoints)
النقطة (Endpoint) الطريقة الوصف
/api/webhook/facebook GET التحقق من Webhook (Verification)
/api/webhook/facebook POST استقبال إشعارات التعليقات من فيسبوك
طلب التحقق (GET)
المعاملات (Query Parameters):
  • hub.mode - يجب أن يكون subscribe
  • hub.verify_token - رمز التحقق المُعدّ في appsettings.json
  • hub.challenge - القيمة التي سيتم إرجاعها للتأكيد
مثال:
GET /api/webhook/facebook?hub.mode=subscribe&hub.verify_token=YOUR_TOKEN&hub.challenge=12345
حمولة الإشعار (POST)
مثال على حمولة تعليق:
{
  "object": "page",
  "entry": [{
    "id": "PAGE_ID",
    "time": 1234567890,
    "changes": [{
      "field": "feed",
      "value": {
        "item": "comment",
        "post_id": "PAGE_ID_POST_ID",
        "comment_id": "COMMENT_ID",
        "from": {
          "id": "USER_ID",
          "name": "اسم المستخدم"
        },
        "message": "نص التعليق"
      }
    }]
  }]
}
دليل التكوين
1. إعداد appsettings.json:
{
  "ConnectionStrings": {
    "DefaultConnection": "Server=...;Database=Mahgoub_bootDb;..."
  },
  "Facebook": {
    "PageAccessToken": "YOUR_PAGE_ACCESS_TOKEN",
    "WebhookVerifyToken": "YOUR_VERIFY_TOKEN"
  }
}
2. تكوين Webhook في فيسبوك:
  1. اذهب إلى Facebook Developer Console
  2. اختر تطبيقك → ProductsWebhooks
  3. أضف Callback URL: https://your-domain.com/api/webhook/facebook
  4. أدخل Verify Token (نفس القيمة في appsettings.json)
  5. اشترك في أحداث feed
3. صلاحيات التطبيق المطلوبة:
  • pages_messaging - لإرسال الرسائل
  • pages_read_engagement - لقراءة التعليقات
  • pages_manage_metadata - لإدارة الصفحة
متغيرات قالب الرد
المتغير الوصف مثال
[UserName] اسم المستخدم الذي علّق أحمد محمد
مثال على قالب:
مرحباً [UserName]! 👋
شكراً لتعليقك على منشورنا.
سنتواصل معك قريباً إن شاء الله.