P Pitchbar مستندات

ساخت دستیار فروش

پردازش خودکار صفحات بازدیدشده

پردازش خودکار یک کلید انتخابی برای هر دستیار فروش است که با مرور بازدیدکنندگان در سایت شما، پایگاه دانش شما را به‌طور خودکار گسترش می‌دهد. هنگامی که یک بازدیدکننده در صفحه‌ای فرود می‌آید که دستیار هرگز آن را ندیده است، آن صفحه بی‌صدا و در پس‌زمینه به صف اسکن فرستاده می‌شود.

روش فعالسازی

صفحه‌ی تنظیمات دستیار فروش را باز کنید (/app/agents/{id}/settings) و کلید پردازش خودکار صفحات بازدید شده را فعال کنید. تغییر بلافاصله اعمال می‌شود — هیچ مرحله‌ی انتشار جداگانه‌ای برای این کلید وجود ندارد.

چه کاری انجام می‌دهد

در هر فراخوانی /v1/widget/init، پس از اینکه دستیار بررسی‌های دامنه و سهمیه را پشت سر گذاشت، AutoIndexPageVisit::attempt() زنجیره‌ای از هفت محافظ را اجرا می‌کند. برای اینکه یک اسکن در صف قرار گیرد، هر هفت مورد باید تأیید شوند:

  1. دستیار فروش دارای auto_index_visited_pages = true است.
  2. آدرس صفحه یک آدرس معتبر http/https است.
  3. میزبان خصوصی نیست — آدرس‌های RFC1918 (10.x، 172.16-31.x، 192.168.x)، لوپ‌بک (localhost، 127.x، ::1)، لینک-محلی (169.254.x، fe80:0.x، IPv6 ULA (fc00:) و دامنه‌های .local / .internal مسدود هستند.
  4. مسیر خصوصی به نظر نمی‌رسد — /admin، /login، /checkout، /profile، /account، /settings، /cart، /api رد می‌شوند.
  5. آدرس قبلاً برای این دستیار فروش پردازش نشده است.
  6. زیر سقف نرخ هستیم — ۳۰ اسکن در ساعت برای هر دستیار فروش، که در Redis ردیابی می‌شود.
  7. هدر Origin واقعی بازدیدکننده با allowed_origins دستیار مطابقت دارد (یا زمانی که allowed_origins * است، با مبدأ آدرس صفحه مطابقت دارد).

اگر همه موارد تأیید شوند، ما یک منبع با type=auto ایجاد کرده و یک CrawlPageJob را در صف crawl قرار می‌دهیم. درخواست بازدیدکننده بلافاصله بازگردانده می‌شود — پردازش خودکار هرگز مسیر اصلی را مسدود نمی‌کند.

چه مواردی را رد می‌کند

لیست مسیرهای ممنوعه وجود دارد زیرا صفحات احراز هویت‌شده پر سر و صدا هستند و پردازش آنها خطرناک است — یک صفحه‌ی /profile یا /account/orders وارد شده، داده‌های بازدیدکننده را به پایگاه دانش شما نشت می‌دهد. لیست کامل در AutoIndexPageVisit::SKIP_PATH_PATTERNS وجود دارد (بدون در نظر گرفتن حروف بزرگ و کوچک، با اسلش انتهایی اختیاری تطابق دارد):

  • /account، /my-account، /profile، /settings
  • /admin
  • /login، /signin، /signup، /register، /logout، /auth، /password
  • /checkout، /cart، /order، /orders
صفحات وارد شده را پردازش نکنید
اگر صفحات احراز هویت‌شده برنامه‌ی شما در مسیرهای غیرمعمول قرار دارند (مانند /portal، /customer)، لیست ممنوعه‌ی پیش‌فرض آنها را نمی‌گیرد. پردازش خودکار را غیرفعال کنید، یا آدرس‌های عمومی دقیقی که می‌خواهید اسکن شوند را از قبل لیست کنید و کلید را به‌کلی غیرفعال کنید.

محدودیت نرخ

سقف ۳۰ اسکن در ساعت برای هر دستیار فروش، یک سطل نشانه است که در Redis با کلید auto-index:agent:{id}:hour:{YmdH} ذخیره می‌شود. اگر یک صفحه‌ی محبوب در سایت شما درخواست‌های زیادی دریافت کند، محدودیت به‌سرعت اعمال می‌شود، اما الگوهای ترافیک عادی به‌ندرت به آن می‌رسند.

چه چیزی پردازش می‌شود

صفحات پردازش‌شده‌ی خودکار به منابع با type=auto تبدیل می‌شوند. آنها در لیست منابع معمولی با یک نشان کوچک "خودکار" نشان داده می‌شوند تا بتوانید ببینید چه چیزی جمع‌آوری شده است. می‌توانید آنها را مانند هر منبع دیگری پیش‌نمایش، دوباره پردازش یا حذف کنید.

عنوان منبع خودکار، عنوان <title> صفحه در صورت وجود است، در غیر این صورت آدرس. حذف تکراری براساس مسیر به این معنی است که اسکن دو بار از یک آدرس، دو منبع ایجاد نمی‌کند.

غیرفعال کردن و پاک‌سازی

کلید را خاموش کنید تا صفحات جدیدی به صف اضافه نشوند، اما منابع خودکار موجود باقی می‌مانند. برای پاک‌سازی آنها، لیست منابع را با type = auto فیلتر کرده و به‌صورت گروهی حذف کنید.

زبان خود را انتخاب کنید