تصور کنید: شما یک کمپین تبلیغاتی را در 20 حساب کاربری Facebook Ads راهاندازی کردهاید و صبح متوجه میشوید که نیمی از پروکسیها از شب گذشته دیگر کار نمیکنند. نتیجه — بودجهای که هدر رفته، حسابهای مسدود شده و زمان از دست رفته. اعلانهای Webhook این مشکل را حل میکنند و اعلانهای فوری در مورد هرگونه مشکل با پروکسی را مستقیماً به تلگرام، اسلک یا دیسکورد ارسال میکنند.
در این راهنما، من نشان میدهم که چگونه نظارت خودکار بر پروکسی را با اعلانهای webhook برای آربیتراژکنندگان، متخصصان SMM و فروشندگان تجارت الکترونیک تنظیم کنید. شما یاد میگیرید که چگونه اعلانهای فوری در مورد افت IP، مسدودیتها و مشکلات دسترسی دریافت کنید — بدون نیاز به بررسی دستی عملکرد به طور مداوم.
Webhook چیست و چرا برای نظارت بر پروکسی نیاز است
Webhook یک اعلان خودکار HTTP است که هنگام بروز یک رویداد خاص به URL مشخص شده ارسال میشود. در زمینه نظارت بر پروکسی، این به این معنی است که سیستم به طور خودکار به محض شناسایی مشکل با IP آدرس، پیامی به شما در تلگرام، اسلک یا دیگر پیامرسانها ارسال خواهد کرد.
این برای کسب و کارها به شدت حیاتی است. اگر شما یک آربیتراژکننده هستید و با Facebook Ads از طریق 30 حساب کاربری کار میکنید که هر کدام از پروکسیهای جداگانه استفاده میکنند، بررسی دستی عملکرد هر IP حداقل یک ساعت در روز زمان میبرد. اعلانهای Webhook این فرآیند را خودکار میکنند — شما در عرض 1-2 دقیقه پس از بروز مشکل از آن مطلع میشوید.
یک مورد واقعی: یک آژانس SMM 50 حساب کاربری اینستاگرام مشتریان را از طریق 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 از کشور دیگری را نشان میدهد — این به معنای مسدود شدن حساب کاربری است.
متخصصان SMM که دهها حساب کاربری اینستاگرام یا TikTok را مدیریت میکنند، باید در درجه اول عدم دسترسی IP و خطاهای احراز هویت را ردیابی کنند. اگر پروکسی کار نکرد و ارسال خودکار همچنان تلاش کند که متصل شود — اینستاگرام ممکن است به خودکار بودن مشکوک شود و حساب را مسدود کند.
برای فروشندگان بازارهای آنلاین (Wildberries، Ozon، Avito) که به قیمتگذاری رقبا میپردازند، نظارت بر مسدودیتها و سرعت پایین از اهمیت بیشتری برخوردار است. اگر شما از پروکسیهای دیتاسنتر برای پارس کردن استفاده میکنید، مسدود شدن یک IP میتواند جمعآوری دادهها را برای صدها محصول متوقف کند.
تنظیم اعلانها در تلگرام: راهنمای گام به گام
تلگرام محبوبترین گزینه برای دریافت اعلانهای webhook در میان آربیتراژکنندگان و متخصصان SMM است. تنظیم آن 5-10 دقیقه طول میکشد و نیاز به مهارتهای فنی ندارد. در اینجا راهنمای گام به گام آورده شده است:
گام 1: ایجاد ربات تلگرام
- تلگرام را باز کنید و ربات @BotFather را پیدا کنید
- دستور
/newbotرا ارسال کنید - یک نام برای ربات انتخاب کنید (به عنوان مثال، "Proxy Monitor")
- یک نام کاربری برای ربات انتخاب کنید (باید به "bot" ختم شود، به عنوان مثال، "my_proxy_monitor_bot")
- BotFather توکن را برای شما ارسال میکند — این یک رشته طولانی به شکل
123456789:ABCdefGHIjklMNOpqrsTUVwxyzاست - این توکن را ذخیره کنید — برای تنظیم webhook به آن نیاز خواهید داشت
گام 2: دریافت Chat ID
Chat ID یک شناسه منحصر به فرد برای چت است که اعلانها به آن ارسال میشود. برای دریافت آن:
- ربات خود را در تلگرام با نام کاربری پیدا کنید و روی "Start" کلیک کنید
- به ربات هر پیامی ارسال کنید (به عنوان مثال، "test")
- در مرورگر باز کنید:
https://api.telegram.org/bot[توکن_شما]/getUpdates - در پاسخ، فیلد "chat":{"id": را پیدا کنید — این Chat ID شماست (به عنوان مثال، 123456789)
گام 3: تنظیم webhook در سرویس نظارت
اکثر سرویسهای نظارت بر پروکسی (UptimeRobot، Pingdom، StatusCake) از اعلانهای webhook پشتیبانی میکنند. شما باید URL برای ارسال اعلانها را به فرمت زیر مشخص کنید:
https://api.telegram.org/bot[توکن_شما]/sendMessage?chat_id=[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-encoding استفاده کنید. اکثر سرویسهای نظارت این کار را به طور خودکار انجام میدهند.
گام 4: تست اعلانها
برای بررسی اینکه آیا webhook به درستی کار میکند، URL webhook خود را در مرورگر باز کنید. اگر همه چیز به درستی تنظیم شده باشد، ربات یک پیام تستی به شما در تلگرام ارسال خواهد کرد. اگر پیام نیامد — صحت توکن و Chat ID را بررسی کنید.
ادغام با اسلک و دیسکورد برای کار تیمی
اگر شما در یک تیم کار میکنید یا یک آژانس SMM را مدیریت میکنید، بهتر است از اسلک یا دیسکورد برای دریافت اعلانها استفاده کنید. این به همه کارکنان اجازه میدهد تا مشکلات پروکسی را در زمان واقعی ببینند و به سرعت واکنش نشان دهند.
تنظیم webhook برای اسلک
- تنظیمات workspace اسلک خود را باز کنید
- به بخش "Apps" → "Incoming Webhooks" بروید
- روی "Add to Slack" کلیک کنید و کانالی برای اعلانها انتخاب کنید (به عنوان مثال، #proxy-monitoring)
- Webhook URL را کپی کنید — این به شکل
https://hooks.slack.com/services/T00000000/B00000000/XXXXXXXXXXXXخواهد بود - از این URL در تنظیمات سرویس نظارت خود استفاده کنید
فرمت دادهها برای webhook اسلک (اگر سرویس نظارت از payload سفارشی پشتیبانی کند):
{
"text": "⚠️ مشکل با پروکسی",
"attachments": [
{
"color": "danger",
"fields": [
{
"title": "IP آدرس",
"value": "185.123.45.67",
"short": true
},
{
"title": "مشکل",
"value": "زمانبر بودن اتصال",
"short": true
}
]
}
]
}
تنظیم webhook برای دیسکورد
- تنظیمات کانال دیسکورد را که باید اعلانها به آن ارسال شوند باز کنید
- به "Integrations" → "Webhooks" بروید
- روی "New Webhook" کلیک کنید و یک نام (به عنوان مثال، "Proxy Monitor") تعیین کنید
- Webhook URL را کپی کنید
- برای سازگاری با فرمت اسلک،
/slackرا به انتهای URL اضافه کنید
دیسکورد از فرمتبندی پیامها از طریق embeds پشتیبانی میکند، که به شما این امکان را میدهد که اعلانهای زیبا با کدگذاری رنگی بر اساس نوع مشکل ایجاد کنید.
سرویسهای آماده نظارت بر پروکسی با webhook
اگر نمیخواهید اسکریپت نظارت خود را بنویسید، میتوانید از سرویسهای آماده استفاده کنید. در اینجا راهحلهای تأیید شدهای که آربیتراژکنندگان و متخصصان SMM استفاده میکنند آورده شده است:
| سرویس | امکانات | قیمت |
|---|---|---|
| UptimeRobot | بررسی دسترسی هر 5 دقیقه، webhook در تلگرام/اسلک/دیسکورد | رایگان تا 50 مانیتور |
| Pingdom | بررسی از مکانهای مختلف، آمار دقیق، webhook | از 10 دلار در ماه |
| StatusCake | نظارت بر سرعت، گواهیهای SSL، اعلانهای webhook | رایگان تا 10 مانیتور |
| Freshping | رابط کاربری ساده، بررسی هر 1-10 دقیقه، webhook | رایگان تا 50 مانیتور |
تنظیم نظارت در UptimeRobot (مثال)
UptimeRobot یک انتخاب محبوب در میان آربیتراژکنندگان به دلیل طرح رایگان و تنظیمات ساده است. در اینجا نحوه تنظیم نظارت بر پروکسی آورده شده است:
- در uptimerobot.com ثبتنام کنید
- روی "Add New Monitor" کلیک کنید
- نوع "HTTP(s)" یا "Port" (برای بررسی پروکسی SOCKS5) را انتخاب کنید
- در فیلد URL، آدرس آزمایشی را که باید از طریق پروکسی بررسی شود وارد کنید (به عنوان مثال، https://api.ipify.org)
- فاصله بررسی را تنظیم کنید (برای طرح رایگان، 5 دقیقه توصیه میشود)
- در بخش "Alert Contacts" webhook را اضافه کنید: نوع "Webhook" را انتخاب کنید و URL webhook تلگرام/اسلک خود را وارد کنید
- تنظیمات را ذخیره کنید
حالا هر 5 دقیقه UptimeRobot دسترسی پروکسی را بررسی کرده و اگر مشکلی شناسایی کند، یک اعلان به تلگرام ارسال میکند. برای نظارت بر چندین پروکسی، یک مانیتور جداگانه برای هر IP ایجاد کنید.
نکته: اگر از پروکسیهای مسکونی با چرخش IP استفاده میکنید، نظارت را نه بر روی خود پروکسی، بلکه بر روی وبسایت هدف (به عنوان مثال، Facebook یا Instagram) تنظیم کنید. بررسی کنید که آیا میتوان با پروکسی به طور موفقیتآمیز صفحه اصلی پلتفرم را بارگذاری کرد.
ایجاد اسکریپت نظارت سفارشی
برای کاربران پیشرفته و کسانی که با تعداد زیادی پروکسی (بیش از 100) کار میکنند، ایجاد یک اسکریپت نظارت سفارشی مؤثرتر است. این به شما کنترل کامل بر پارامترهای بررسی و فرمت اعلانها میدهد.
مثال اسکریپت به زبان Python
یک اسکریپت ساده برای بررسی لیست پروکسی و ارسال اعلانها به تلگرام در صورت شناسایی مشکلات:
import requests
import time
# تنظیمات تلگرام
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):
"""ارسال اعلان به تلگرام"""
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 از API برای مدیریت پروفایلها و پروکسیها پشتیبانی میکنند.
تغییر خودکار پروکسی در Dolphin Anty
Dolphin Anty API را برای تغییر تنظیمات پروفایلها فراهم میکند. در اینجا نحوه تنظیم تغییر خودکار پروکسی غیرعملکرد آورده شده است:
- API key را در تنظیمات Dolphin Anty دریافت کنید (Settings → API)
- لیست پروکسیهای پشتیبان برای هر پروفایل را آماده کنید
- یک اسکریپت ایجاد کنید که با دریافت اعلان webhook در مورد مشکل، پروکسی را به طور خودکار از طریق API تغییر دهد
مثال یک درخواست به API 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 نیز از API برای خودکارسازی پشتیبانی میکند. مراحل اصلی:
- API محلی را در تنظیمات AdsPower فعال کنید (Settings → Local API → Enable)
- از endpoint
/api/v1/user/updateبرای بهروزرسانی پروکسی پروفایل استفاده کنید - Webhook را تنظیم کنید که این API را هنگام شناسایی مشکل فراخوانی کند
یک مورد عملی: تیم آربیتراژ تغییر خودکار پروکسی را در Dolphin Anty تنظیم کرد. هنگامی که webhook مشکلی با IP شناسایی میکرد، اسکریپت به طور خودکار پروفایل را به پروکسی پشتیبان از استخر تغییر میداد. این زمان خرابی کمپینهای تبلیغاتی را از 2-3 ساعت به 5 دقیقه کاهش داد.
بهترین شیوهها برای تنظیم اعلانها
برای اینکه سیستم اعلانهای webhook به طور مؤثر کار کند و نویز اطلاعاتی ایجاد نکند، این توصیهها را دنبال کنید:
1. اولویتهای اعلانها را تنظیم کنید
همه مشکلات نیاز به واکنش فوری ندارند. اعلانها را به سه سطح تقسیم کنید:
- بحرانی (🔴): عدم دسترسی IP، مسدودیت توسط پلتفرم، تغییر موقعیت جغرافیایی — نیاز به واکنش فوری دارند
- مهم (🟡): سرعت پایین، پینگ بالا — میتوان در عرض یک ساعت اصلاح کرد
- اطلاعاتی (🟢): نزدیک شدن به محدودیت ترافیک، انقضای اشتراک در 7 روز
برای اعلانهای بحرانی از تلگرام با اعلانهای صوتی فعال استفاده کنید. اطلاعاتی را میتوان به یک کانال جداگانه اسلک یا به ایمیل ارسال کرد.
2. از هشدارهای کاذب جلوگیری کنید
تأخیر قبل از ارسال اعلان را تنظیم کنید. اگر پروکسی یک بار پاسخ نداد — این ممکن است یک اختلال موقتی باشد. فقط در صورتی که مشکل در 2-3 بررسی متوالی تأیید شد، اعلان ارسال کنید.
3. زمینه را به اعلانها اضافه کنید
یک اعلان خوب باید تمام اطلاعات لازم برای حل سریع مشکل را شامل شود:
- IP آدرس و پورت پروکسی
- نوع مشکل (زمانبر بودن، مسدودیت، تغییر جغرافیایی)
- زمان شناسایی مشکل
- کدام حسابها یا پروفایلها از این پروکسی استفاده میکنند
- اقدام توصیه شده (به عنوان مثال، "به پروکسی پشتیبان شماره 2 تغییر دهید")
4. از کانالهای مختلف برای انواع مختلف پروکسی استفاده کنید
اگر با انواع مختلف پروکسی (موبایل، مسکونی، دیتاسنتر) کار میکنید، کانالهای جداگانهای برای اعلانها برای هر نوع ایجاد کنید. این کار تشخیص مشکلات و توزیع وظایف در تیم را آسانتر میکند.
5. اقدامات خودکار را تنظیم کنید
سطح پیشرفته — تنظیم نه تنها اعلانها، بلکه اقدامات خودکار هنگام شناسایی مشکلات:
- تغییر خودکار پروکسی در مرورگر ضد شناسایی
- متوقف کردن پارسر یا ارسال خودکار تا حل مشکل
- تغییر به پروکسی پشتیبان از استخر
- ایجاد خودکار تیکت در پشتیبانی ارائهدهنده
6. ثبت مشکلات را انجام دهید
تنظیم ذخیرهسازی تمام اعلانها در پایگاه داده یا Google Sheets. این کار به شما کمک میکند:
- شناسایی IPهای مشکلدار که اغلب از کار میافتند
- ارزیابی کیفیت کار ارائهدهنده پروکسی
- ساخت نمودارهای دسترسی برای گزارشدهی
- بهینهسازی توزیع بار بین پروکسیها
نتیجهگیری
اعلانهای webhook در مورد مشکلات پروکسی نه تنها یک راحتی، بلکه یک ضرورت برای کار حرفهای با چند حساب کاربری، آربیتراژ ترافیک و پارس کردن است. یک سیستم نظارت به درستی تنظیم شده میتواند زمان خرابی را از چند ساعت به 5-15 دقیقه کاهش دهد، که در کار با بودجههای تبلیغاتی یا مدیریت حسابهای مشتریان بسیار حیاتی است.
مزایای اصلی که پس از تنظیم اعلانهای webhook دریافت میکنید: شناسایی فوری مشکلات (30-60 ثانیه به جای چند ساعت بررسی دستی)، خودکارسازی بررسیهای روتین (1-2 ساعت در روز آزاد میکند)، جلوگیری از خسارات ناشی از خرابی کمپینهای تبلیغاتی، و امکان مقیاسپذیری تا 100+ پروکسی بدون افزایش بار بر روی تیم.
با تنظیم ساده ربات تلگرام و سرویس نظارت رایگان مانند UptimeRobot شروع کنید — این کار 10-15 دقیقه طول میکشد. با افزایش تعداد پروکسیها و پیچیدگی وظایف، به اسکریپتهای نظارت سفارشی با تغییر خودکار IPهای مشکلدار از طریق API مرورگرهای ضد شناسایی بروید.
اگر قصد دارید به طور جدی با چند حساب کاربری یا آربیتراژ کار کنید، توصیه میکنیم از پروکسیهای مسکونی قابل اعتماد با آپتایم بالا استفاده کنید. این کار تعداد مشکلات را به حداقل میرساند و به شما این امکان را میدهد که بر روی توسعه کسب و کار تمرکز کنید، نه بر روی خاموش کردن مداوم آتشها با IPهای غیرقابل دسترسی.