══════════ بایگانی گفتگو (مشتری‌هایی که کارشان تمام شده) ══════════
مدیر می‌تواند گفتگوی مشتری‌ای را که کارش تمام شده «بایگانی» کند تا از فهرست اصلی بیرون برود؛
به‌محض اینکه مشتری یا مدیر پیام تازه‌ای بفرستد، گفتگو خودکار از بایگانی بیرون می‌آید و دوباره در فهرست اصلی دیده می‌شود.

نحوهٔ استفاده (پنل مدیریت)
  • گفتگو را باز کنید ← دکمهٔ 🗄 بالای چت (کنار 📌 و ✎) ← گفتگو بسته می‌شود و از فهرست می‌رود.
  • دیدن بایگانی: در فهرست گفتگوها روی «🗄 بایگانی» (عدد کنارش = تعداد گفتگوهای بایگانی‌شده) بزنید.
  • بیرون آوردن دستی: گفتگو را در نمای بایگانی باز کنید ← دکمهٔ 📤 («خروج از بایگانی»).
  • جستجو (نام، موبایل، کد پیگیری…) در بایگانی هم می‌گردد؛ نتیجه‌های بایگانی‌شده با 🗄 مشخص‌اند.

قواعد
  • خروج خودکار با هر پیام تازه: پیام مشتری (متن، فایل، پاسخ فرم، گزینهٔ درخت پرسش، درخواست جدید) یا پیام مدیر.
  • پیام‌های خودکار گفتگو را از بایگانی بیرون نمی‌آورند: پاسخ ربات 🤖 ، اطلاع «خارج از ساعت کاری» 🕒 و
    پیام «وضعیت درخواست … : انجام‌شده». (پس می‌توانید وضعیت را «انجام‌شده» کنید و بعد بایگانی کنید یا برعکس.)
  • گفتگوی بایگانی‌شده سنجاق نمی‌ماند (هنگام بایگانی سنجاقش برداشته می‌شود).
  • شمارندهٔ «خوانده‌نشده» و تعداد گفتگوها فقط گفتگوهای فعال را می‌شمارد.
  • مشتری هیچ تغییری نمی‌بیند؛ بایگانی فقط در سمت مدیریت است و هیچ پیامی پاک نمی‌شود.
  • اعلان پیام مشتری (صدا، پوش، ربات بله/تلگرام) برای گفتگوی بایگانی‌شده هم مثل قبل می‌آید.

فنی
  • ستون conv.archived (زمان بایگانی به میلی‌ثانیه؛ ۰ = فعال) خودکار ساخته می‌شود؛ نیازی به دست‌کاری دیتابیس نیست.
  • مسیر جدید: POST api/c3/admin/archive  با {cid, archived:true|false}
  • فیلتر جدید در api/c3/admin/convs : filter=archived
  • deliver() در api.php پارامتر unarchive دارد (پیش‌فرض true)؛ پیام‌های خودکار با false فرستاده می‌شوند.
  • فایل‌های تغییرکرده: api.php ، panel-aaf2d6f1b2e7.html
  • این کد را اجرا نکرده‌ام (روی سیستم من PHP نبود)؛ بعد از آپلود این سناریو را تست کنید:
    بایگانی ← پیام از مرورگر مشتری ← بیرون آمدن خودکار؛ و بایگانی ← پیام از پنل مدیر ← بیرون آمدن خودکار.
