Files
customerTicket/apps/phone_contacts_api/README.md
T
2026-09-30 08:39:26 +03:30

2.3 KiB

خروجی مخاطبان برای Phone

این برنامه endpoint خواندنی GET /api/phone-contacts?search=...&limit=50 را مطابق قرارداد ابتدای EXTERNAL_CONTACT_APIS.md ارائه می‌کند. پاسخ همیشه شیء JSON با کلید contacts است. هر مخاطب فعال دارای پروفایل و نام، با شماره همراه در قالب محلی 09... برگردانده می‌شود. جست‌وجو در نام، نام خانوادگی، نام سازمان و شماره ثبت‌شده انجام می‌شود. سقف پاسخ ۵۰ مخاطب است.

راه‌اندازی

  1. Migration برنامه را با محیط مجازی پروژه اجرا کنید: .venv/Scripts/python.exe manage.py migrate phone_contacts_api.
  2. در /x5admin/، بخش «دسترسی API مخاطبان Phone» ← «کلید API مخاطبان Phone» را باز کنید. یک کلید تصادفی حداقل ۳۲ نویسه‌ای ثبت کنید. مقدار کلید فقط هنگام ذخیره دریافت می‌شود و در دیتابیس به صورت هش نگهداری می‌شود. برای تعویض کلید، رکورد را ویرایش کنید؛ خالی گذاشتن فیلد کلید، مقدار قبلی را حفظ می‌کند. با خاموش کردن «فعال»، دسترسی بلافاصله قطع می‌شود.
  3. در پنل Phone منبع GET بسازید: آدرس ثابت https://<host>/api/phone-contacts، پارامترها {"search":"{{query}}","limit":50}، هدر {"Authorization":"Bearer {{env:PHONE_EXTERNAL_CRM_TOKEN}}"}، مسیر فهرست contacts، مسیر نام name و نگاشت شماره‌ها [{"path":"phones[]","value_path":"number","label_path":"type"}]. مقدار PHONE_EXTERNAL_CRM_TOKEN در میزبان Phone باید همان کلید ثبت‌شده در دیتابیس این پروژه باشد.

کلید به کاربران سایت وابسته نیست؛ خروجی این endpoint شامل همه مخاطبان فعال دارای پروفایل و نام است. همان‌طور که راهنمای Phone توضیح می‌دهد، دسترسی کاربران Phone باید در سمت مصرف‌کننده یا با محدود کردن داده‌های این سرویس کنترل شود.