العودة إلى المدونة

إشعارات Webhook عن مشاكل البروكسي: إعداد المراقبة التلقائية في 10 دقائق

دليل خطوة بخطوة لإعداد إشعارات webhook لمراقبة البروكسي: كيفية تلقي تنبيهات فورية حول المشكلات وأتمتة مراقبة صلاحية عناوين IP.

📅٢٨ شعبان ١٤٤٧ هـ
```html

تخيل الوضع: لقد أطلقت حملة إعلانية على 20 حسابًا في Facebook Ads، وفي الصباح اكتشفت أن نصف الوكلاء توقفوا عن العمل منذ مساء الأمس. النتيجة - ميزانية مهدرة، حسابات محظورة ووقت ضائع. تعمل إشعارات webhook على حل هذه المشكلة، حيث ترسل إشعارات فورية عن أي مشاكل في الوكيل مباشرة إلى Telegram أو Slack أو Discord.

في هذا الدليل سأوضح لك كيفية إعداد مراقبة تلقائية للوكلاء مع إشعارات webhook للمتداولين، والمتخصصين في وسائل التواصل الاجتماعي، وبائعي التجارة الإلكترونية. ستتعلم كيفية تلقي إشعارات فورية عن انقطاع IP، الحظر والمشاكل في الوصول - دون الحاجة إلى التحقق من العمل يدويًا بشكل مستمر.

ما هو webhook ولماذا هو ضروري لمراقبة الوكيل

webhook هو إشعار HTTP تلقائي يتم إرساله إلى عنوان URL المحدد عند حدوث حدث معين. في سياق مراقبة الوكيل، يعني ذلك أن النظام سيرسل لك تلقائيًا رسالة في Telegram أو Slack أو أي تطبيق مراسلة آخر بمجرد اكتشاف مشكلة في عنوان IP.

بالنسبة للأعمال، هذا أمر حيوي. إذا كنت متداولًا وتعمل مع Facebook Ads عبر 30 حسابًا، كل منها يستخدم وكيلًا منفصلًا، فإن التحقق اليدوي من عمل كل IP سيستغرق على الأقل ساعة في اليوم. تعمل إشعارات webhook على أتمتة هذه العملية - ستعرف عن المشكلة خلال 1-2 دقيقة بعد حدوثها.

حالة حقيقية: كانت وكالة SMM تدير 50 حسابًا على Instagram لعملائها عبر Dolphin Anty. بعد إعداد مراقبة webhook، قللوا من وقت تعطل الحسابات من 4-6 ساعات إلى 15 دقيقة - حيث كانت النظام ينبه على الفور عن انقطاع الوكيل، وكان المدير يقوم بتحويل الحساب إلى IP احتياطي على الفور.

المزايا الرئيسية لإشعارات webhook لمراقبة الوكيل:

  • استجابة فورية: تصل الإشعار خلال 30-60 ثانية بعد اكتشاف المشكلة
  • توفير الوقت: لا حاجة للتحقق يدويًا من عمل كل وكيل
  • منع الخسائر: الاكتشاف السريع للمشكلة = الحد الأدنى من تعطل الحملات الإعلانية
  • قابلية التوسع: يمكن مراقبة 100+ وكيل في نفس الوقت
  • مرونة الإعداد: تختار الأحداث التي تريد تتبعها وأين ترسل الإشعارات

ما هي المشاكل التي يمكن تتبعها مع الوكيل عبر webhook

يجب أن تتبع نظام مراقبة فعال جميع الأحداث الحرجة التي يمكن أن تؤثر على عمل حساباتك أو برامج الزحف. إليك الأنواع الرئيسية من المشاكل التي يمكن التحكم فيها عبر إشعارات webhook:

نوع المشكلة ما يتم تتبعه الأهمية
عدم توفر IP الوكيل لا يستجيب للطلبات، انتهاء مهلة الاتصال عالية
الحظر من قبل المنصة تم حظر IP من قبل Facebook أو Instagram أو TikTok أو السوق عالية
سرعة منخفضة انخفضت سرعة الاتصال تحت العتبة المحددة متوسطة
تغيير الموقع الجغرافي تغير عنوان IP إلى دولة أو منطقة أخرى عالية
أخطاء المصادقة اسم مستخدم/كلمة مرور غير صحيحة، انتهاء صلاحية عالية
تجاوز الحدود تم استهلاك حركة المرور أو انتهاء صلاحية الاشتراك متوسطة

بالنسبة للمتداولين الذين يعملون مع Facebook Ads أو TikTok Ads، فإن الإشعارات حول حظر IP من قبل المنصة وتغيير الموقع الجغرافي هي الأكثر أهمية. إذا قمت بإعداد الحساب على الولايات المتحدة، وبدأ الوكيل فجأة في عرض IP من دولة أخرى - فهذا يعني حظرًا مضمونًا للحساب.

يجب على المتخصصين في وسائل التواصل الاجتماعي الذين يديرون العشرات من حسابات Instagram أو TikTok تتبع عدم توفر IP وأخطاء المصادقة في المقام الأول. إذا توقف الوكيل عن العمل، بينما يستمر النشر التلقائي في محاولة الاتصال - قد تشك Instagram في الأتمتة وتحظر الحساب.

بالنسبة لبائعي الأسواق (Wildberries، Ozon، Avito) الذين يقومون بزحف أسعار المنافسين، فإن أهم شيء هو مراقبة الحظر والسرعة المنخفضة. إذا كنت تستخدم وكلاء مراكز البيانات للزحف، فإن حظر IP واحد يمكن أن يوقف جمع البيانات لمئات المنتجات.

إعداد الإشعارات في Telegram: دليل خطوة بخطوة

Telegram هو الخيار الأكثر شعبية لتلقي إشعارات webhook بين المتداولين والمتخصصين في وسائل التواصل الاجتماعي. يستغرق الإعداد 5-10 دقائق ولا يتطلب مهارات تقنية. إليك دليل خطوة بخطوة:

الخطوة 1: إنشاء بوت Telegram

  1. افتح Telegram وابحث عن البوت @BotFather
  2. أرسل الأمر /newbot
  3. اختر اسمًا للبوت (مثل "Proxy Monitor")
  4. اختر اسم مستخدم للبوت (يجب أن ينتهي بـ "bot"، مثل "my_proxy_monitor_bot")
  5. سيرسل لك BotFather رمز التوكن - وهو سلسلة طويلة من الشكل 123456789:ABCdefGHIjklMNOpqrsTUVwxyz
  6. احفظ هذا الرمز - ستحتاجه لإعداد webhook

الخطوة 2: الحصول على Chat ID

Chat ID هو معرف فريد للدردشة، حيث ستصل الإشعارات. للحصول عليه:

  1. ابحث عن بوتك في Telegram بواسطة اسم المستخدم واضغط "Start"
  2. أرسل للبوت أي رسالة (مثل "test")
  3. افتح في المتصفح: https://api.telegram.org/bot[YOUR_TOKEN]/getUpdates
  4. في الرد، ابحث عن الحقل "chat":{"id": - هذا هو Chat ID الخاص بك (مثل 123456789)

الخطوة 3: إعداد webhook في خدمة المراقبة

تدعم معظم خدمات مراقبة الوكيل (UptimeRobot، Pingdom، StatusCake) إشعارات webhook. تحتاج إلى تحديد URL لإرسال الإشعارات بالشكل التالي:

https://api.telegram.org/bot[YOUR_TOKEN]/sendMessage?chat_id=[YOUR_CHAT_ID]&text=نص_الإشعار

على سبيل المثال، إذا كان رمز التوكن الخاص بك 123456789:ABCdef، وChat ID 987654321، فإن URL webhook سيكون:

https://api.telegram.org/bot123456789:ABCdef/sendMessage?chat_id=987654321&text=الوكيل%20لا%20يعمل

مهم: في نص الإشعار (معامل text) يجب استبدال المسافات بـ %20 أو استخدام الترميز URL. تقوم معظم خدمات المراقبة بذلك تلقائيًا.

الخطوة 4: اختبار الإشعارات

للتحقق من أن webhook يعمل بشكل صحيح، افتح في المتصفح URL webhook الخاص بك. إذا تم الإعداد بشكل صحيح، سيرسل لك البوت رسالة اختبار في Telegram. إذا لم تصل الرسالة - تحقق من صحة رمز التوكن وChat ID.

التكامل مع Slack وDiscord للعمل الجماعي

إذا كنت تعمل في فريق أو تدير وكالة SMM، فمن الأفضل استخدام Slack أو Discord لتلقي الإشعارات. يتيح ذلك لجميع الموظفين رؤية مشاكل الوكيل في الوقت الحقيقي والاستجابة بسرعة.

إعداد webhook لـ Slack

  1. افتح إعدادات مساحة عمل Slack الخاصة بك
  2. انتقل إلى قسم "التطبيقات" → "Incoming Webhooks"
  3. اضغط على "إضافة إلى Slack" واختر قناة للإشعارات (مثل #proxy-monitoring)
  4. انسخ URL webhook - سيبدو كـ https://hooks.slack.com/services/T00000000/B00000000/XXXXXXXXXXXX
  5. استخدم هذا URL في إعدادات خدمة المراقبة الخاصة بك

تنسيق البيانات لـ Slack webhook (إذا كانت خدمة المراقبة تدعم payload مخصص):

{
  "text": "⚠️ مشكلة في الوكيل",
  "attachments": [
    {
      "color": "danger",
      "fields": [
        {
          "title": "عنوان IP",
          "value": "185.123.45.67",
          "short": true
        },
        {
          "title": "المشكلة",
          "value": "انتهاء مهلة الاتصال",
          "short": true
        }
      ]
    }
  ]
}

إعداد webhook لـ Discord

  1. افتح إعدادات القناة في Discord حيث تحتاج إلى إرسال الإشعارات
  2. انتقل إلى "التكاملات" → "Webhooks"
  3. اضغط على "Webhook جديد" وحدد اسمًا (مثل "Proxy Monitor")
  4. انسخ URL webhook
  5. أضف /slack في نهاية URL للتوافق مع تنسيق Slack

يدعم Discord تنسيق الرسائل عبر embeds، مما يسمح بإنشاء إشعارات جميلة مع ترميز لوني حسب نوع المشكلة.

خدمات مراقبة الوكيل الجاهزة مع webhook

إذا كنت لا ترغب في كتابة سكربت مراقبة خاص بك، يمكنك استخدام خدمات جاهزة. إليك حلول موثوقة يستخدمها المتداولون والمتخصصون في وسائل التواصل الاجتماعي:

الخدمة الميزات السعر
UptimeRobot التحقق من التوفر كل 5 دقائق، webhook في Telegram/Slack/Discord مجاني حتى 50 مراقبًا
Pingdom التحقق من مواقع مختلفة، إحصائيات مفصلة، webhook من 10 دولارات/شهر
StatusCake مراقبة السرعة، شهادات SSL، إشعارات webhook مجاني حتى 10 مراقبًا
Freshping واجهة بسيطة، تحقق كل 1-10 دقائق، webhook مجاني حتى 50 مراقبًا

إعداد المراقبة في UptimeRobot (مثال)

UptimeRobot هو خيار شائع بين المتداولين بفضل خطته المجانية وسهولة الإعداد. إليك كيفية إعداد مراقبة الوكيل:

  1. سجل في uptimerobot.com
  2. اضغط على "إضافة مراقب جديد"
  3. اختر النوع "HTTP(s)" أو "Port" (للتحقق من وكلاء SOCKS5)
  4. في حقل URL، حدد عنوان اختبار سيتم التحقق منه عبر الوكيل (مثل https://api.ipify.org)
  5. حدد فترة التحقق (يوصى بـ 5 دقائق للخطة المجانية)
  6. في قسم "جهات الاتصال للإشعارات"، أضف webhook: اختر النوع "Webhook" والصق URL webhook الخاص بك في Telegram/Slack
  7. احفظ الإعدادات

الآن، كل 5 دقائق، سيقوم UptimeRobot بالتحقق من توفر الوكيل وإرسال إشعار إلى Telegram إذا اكتشف مشكلة. لمراقبة عدة وكلاء، أنشئ مراقبًا منفصلًا لكل IP.

نصيحة: إذا كنت تستخدم وكلاء سكنيين مع تغيير IP، قم بإعداد المراقبة ليس للوكيل نفسه، ولكن للموقع المستهدف (مثل Facebook أو Instagram). تحقق من أنه يمكن تحميل الصفحة الرئيسية للمنصة بنجاح عبر الوكيل.

إنشاء سكربت مراقبة مخصص

بالنسبة للمستخدمين المتقدمين والذين يعملون مع عدد كبير من الوكلاء (100+)، من الأكثر فعالية إنشاء سكربت مراقبة خاص. يمنحك ذلك السيطرة الكاملة على معايير التحقق وتنسيق الإشعارات.

مثال على سكربت بلغة Python

سكربت بسيط للتحقق من قائمة الوكلاء وإرسال إشعارات إلى Telegram عند اكتشاف مشاكل:

import requests
import time

# إعدادات Telegram
TELEGRAM_TOKEN = "123456789:ABCdefGHIjklMNOpqrsTUVwxyz"
CHAT_ID = "987654321"

# قائمة الوكلاء للمراقبة
PROXIES = [
    {"ip": "185.123.45.67", "port": 8080, "user": "user1", "pass": "pass1"},
    {"ip": "185.123.45.68", "port": 8080, "user": "user2", "pass": "pass2"},
]

def check_proxy(proxy):
    """التحقق من عمل الوكيل"""
    proxy_url = f"http://{proxy['user']}:{proxy['pass']}@{proxy['ip']}:{proxy['port']}"
    proxies = {"http": proxy_url, "https": proxy_url}
    
    try:
        response = requests.get("https://api.ipify.org?format=json", 
                              proxies=proxies, 
                              timeout=10)
        if response.status_code == 200:
            return True, response.json()['ip']
        return False, "خطأ HTTP"
    except Exception as e:
        return False, str(e)

def send_telegram(message):
    """إرسال إشعار إلى Telegram"""
    url = f"https://api.telegram.org/bot{TELEGRAM_TOKEN}/sendMessage"
    data = {"chat_id": CHAT_ID, "text": message}
    requests.post(url, data=data)

# الحلقة الرئيسية للمراقبة
while True:
    for proxy in PROXIES:
        is_working, result = check_proxy(proxy)
        
        if not is_working:
            message = f"⚠️ الوكيل لا يعمل!\n"
            message += f"IP: {proxy['ip']}:{proxy['port']}\n"
            message += f"خطأ: {result}"
            send_telegram(message)
        else:
            print(f"✅ الوكيل {proxy['ip']} يعمل (IP الخارجي: {result})")
    
    time.sleep(300)  # تحقق كل 5 دقائق

نسخة موسعة مع التحقق من الموقع الجغرافي

بالنسبة للمتداولين، من الحيوي أن لا يتغير IP إلى دولة أخرى. إليك نسخة معدلة من السكربت مع التحقق من الموقع الجغرافي:

def check_proxy_geo(proxy, expected_country):
    """التحقق من الوكيل مع مراقبة الموقع الجغرافي"""
    proxy_url = f"http://{proxy['user']}:{proxy['pass']}@{proxy['ip']}:{proxy['port']}"
    proxies = {"http": proxy_url, "https": proxy_url}
    
    try:
        # التحقق من IP والموقع الجغرافي
        response = requests.get("http://ip-api.com/json/", 
                              proxies=proxies, 
                              timeout=10)
        
        if response.status_code == 200:
            data = response.json()
            current_country = data['countryCode']
            current_ip = data['query']
            
            if current_country != expected_country:
                return False, f"تغيير الدولة: {expected_country} → {current_country}"
            
            return True, f"IP: {current_ip}, الدولة: {current_country}"
        
        return False, "خطأ HTTP"
    except Exception as e:
        return False, str(e)

# الاستخدام
PROXIES = [
    {"ip": "185.123.45.67", "port": 8080, "user": "user1", "pass": "pass1", "country": "US"},
    {"ip": "185.123.45.68", "port": 8080, "user": "user2", "pass": "pass2", "country": "GB"},
]

for proxy in PROXIES:
    is_working, result = check_proxy_geo(proxy, proxy['country'])
    if not is_working:
        send_telegram(f"⚠️ مشكلة في {proxy['ip']}: {result}")

التشغيل التلقائي عبر cron

لجعل السكربت يعمل باستمرار، قم بإعداد تشغيله عبر cron (Linux/Mac) أو Task Scheduler (Windows). مثال على مهمة cron للتحقق كل 5 دقائق:

*/5 * * * * /usr/bin/python3 /path/to/proxy_monitor.py

التكامل مع متصفحات مكافحة الكشف Dolphin Anty وAdsPower

إذا كنت تستخدم متصفحات مكافحة الكشف للمتعددة الحسابات، يمكنك إعداد تغيير تلقائي للوكلاء عند اكتشاف مشاكل. تدعم Dolphin Anty وAdsPower واجهة برمجة التطبيقات لإدارة الملفات الشخصية والوكلاء.

تغيير الوكيل تلقائيًا في Dolphin Anty

توفر Dolphin Anty واجهة برمجة التطبيقات لتغيير إعدادات الملفات الشخصية. إليك كيفية إعداد تغيير تلقائي للوكيل غير العامل:

  1. احصل على مفتاح API في إعدادات Dolphin Anty (الإعدادات → API)
  2. أعد قائمة بالوكلاء الاحتياطيين لكل ملف شخصي
  3. أنشئ سكربتًا يقوم بتغيير الوكيل تلقائيًا عبر واجهة برمجة التطبيقات عند تلقي إشعار webhook عن مشكلة

مثال على طلب إلى واجهة برمجة التطبيقات Dolphin Anty لتغيير الوكيل:

import requests

API_KEY = "your_dolphin_api_key"
PROFILE_ID = "12345"
NEW_PROXY = "http://user:pass@new-proxy-ip:port"

url = f"https://anty-api.com/browser_profiles/{PROFILE_ID}"
headers = {"Authorization": f"Bearer {API_KEY}"}
data = {
    "proxy": {
        "type": "http",
        "host": "new-proxy-ip",
        "port": "port",
        "login": "user",
        "password": "pass"
    }
}

response = requests.patch(url, headers=headers, json=data)
if response.status_code == 200:
    print(f"✅ تم تحديث الوكيل للملف الشخصي {PROFILE_ID}")
else:
    print(f"❌ خطأ في التحديث: {response.text}")

الإعداد في AdsPower

تدعم AdsPower أيضًا واجهة برمجة التطبيقات للأتمتة. الخطوات الرئيسية:

  1. قم بتمكين Local API في إعدادات AdsPower (الإعدادات → Local API → تمكين)
  2. استخدم نقطة النهاية /api/v1/user/update لتحديث الوكيل في الملف الشخصي
  3. قم بإعداد webhook يستدعي هذه الواجهة عند اكتشاف مشكلة

حالة عملية: قامت فريق المتداولين بإعداد تغيير تلقائي للوكيل في Dolphin Anty. عندما كان webhook يكتشف مشكلة في IP، كان السكربت يقوم تلقائيًا بتحويل الملف الشخصي إلى وكيل احتياطي من المجموعة. هذا قلل من وقت تعطل الحملات الإعلانية من 2-3 ساعات إلى 5 دقائق.

أفضل الممارسات لإعداد الإشعارات

لجعل نظام إشعارات webhook يعمل بشكل فعال ولا يخلق ضوضاء معلوماتية، اتبع هذه التوصيات:

1. إعداد أولويات الإشعارات

ليست كل المشاكل تتطلب استجابة فورية. قسم الإشعارات إلى ثلاثة مستويات:

  • حرجة (🔴): عدم توفر IP، حظر من المنصة، تغيير الموقع الجغرافي - تتطلب استجابة فورية
  • مهمة (🟡): سرعة منخفضة، ping مرتفع - يمكن إصلاحها خلال ساعة
  • معلوماتية (🟢): الاقتراب من حد حركة المرور، انتهاء الاشتراك خلال 7 أيام

للإشعارات الحرجة، استخدم Telegram مع تنبيهات صوتية مفعلة. يمكن إرسال المعلومات إلى قناة Slack منفصلة أو عبر البريد الإلكتروني.

2. تجنب الإنذارات الكاذبة

قم بإعداد تأخير قبل إرسال الإشعار. إذا لم يستجب الوكيل مرة واحدة - قد تكون هذه مشكلة مؤقتة. أرسل الإشعار فقط إذا تم تأكيد المشكلة من خلال 2-3 تحقق متتالي.

3. أضف سياقًا إلى الإشعارات

يجب أن تحتوي الإشعار الجيد على جميع المعلومات اللازمة لحل المشكلة بسرعة:

  • عنوان IP ورقم منفذ الوكيل
  • نوع المشكلة (انتهاء المهلة، الحظر، تغيير الموقع الجغرافي)
  • وقت اكتشاف المشكلة
  • أي حسابات أو ملفات شخصية تستخدم هذا الوكيل
  • الإجراء الموصى به (مثل "تحويل إلى الوكيل الاحتياطي #2")

4. استخدم قنوات مختلفة لأنواع مختلفة من الوكلاء

إذا كنت تعمل مع أنواع مختلفة من الوكلاء (محمول، سكني، مراكز بيانات)، أنشئ قنوات إشعارات منفصلة لكل نوع. سيسهل ذلك تشخيص المشاكل وتوزيع المهام في الفريق.

5. إعداد إجراءات تلقائية

المستوى المتقدم - إعداد ليس فقط الإشعارات، ولكن أيضًا الإجراءات التلقائية عند اكتشاف المشاكل:

  • تغيير الوكيل تلقائيًا في متصفح مكافحة الكشف
  • إيقاف الزاحف أو النشر التلقائي حتى يتم حل المشكلة
  • التحويل إلى وكيل احتياطي من المجموعة
  • إنشاء تذكرة تلقائية للدعم من مزود الخدمة

6. احتفظ بسجل للمشاكل

قم بإعداد حفظ جميع الإشعارات في قاعدة بيانات أو Google Sheets. سيساعد ذلك في:

  • تحديد IPs المشكلة التي تتعطل كثيرًا
  • تقييم جودة خدمة مزود الوكيل
  • إنشاء مخططات للتوافر للتقارير
  • تحسين توزيع الحمل بين الوكلاء

الخاتمة

تعتبر إشعارات webhook عن مشاكل الوكيل ليست مجرد راحة، بل ضرورة للعمل الاحترافي مع تعدد الحسابات، وتجارة المرور والزحف. يسمح لك نظام المراقبة المُعد بشكل صحيح بتقليل وقت التعطل من عدة ساعات إلى 5-15 دقيقة، وهو أمر حيوي عند العمل مع ميزانيات إعلانات أو إدارة حسابات العملاء.

المزايا الرئيسية التي تحصل عليها بعد إعداد إشعارات webhook: اكتشاف فوري للمشاكل (30-60 ثانية بدلاً من عدة ساعات من التحقق اليدوي)، أتمتة الفحوصات الروتينية (تحرير 1-2 ساعة في اليوم)، منع الخسائر الناتجة عن تعطل الحملات الإعلانية، إمكانية التوسع إلى 100+ وكيل دون زيادة الحمل على الفريق.

ابدأ بإعداد بسيط لبوت Telegram وخدمة مراقبة مجانية مثل UptimeRobot - سيستغرق ذلك 10-15 دقيقة. مع زيادة عدد الوكلاء وتعقيد المهام، انتقل إلى سكربتات المراقبة الخاصة بك مع تغيير تلقائي لعناوين IP المسببة للمشاكل عبر واجهة برمجة التطبيقات لمتصفحات مكافحة الكشف.

إذا كنت تخطط للعمل بجدية مع تعدد الحسابات أو التجارة، نوصي باستخدام وكلاء سكنيين موثوقين مع وقت تشغيل مرتفع. سيقلل هذا من عدد المشاكل ويسمح لك بالتركيز على تطوير الأعمال بدلاً من إطفاء الحرائق المستمرة مع عناوين IP غير المتاحة.

```