api contact
This commit is contained in:
1 parent
0b56766f96
commit
04d2bc957f
14 files changed
+595
-1
No files matched your search
@@ -0,0 +1,11 @@
|
||||
# خروجی مخاطبان برای 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 باید در سمت مصرفکننده یا با محدود کردن دادههای این سرویس کنترل شود.
|
||||
Reference in new issue
Block a user