Skip to content

Commit

Permalink
Update ReadMe.md
Browse files Browse the repository at this point in the history
  • Loading branch information
amirsalarsafaei authored Dec 29, 2024
1 parent f3154b6 commit b78cbd0
Showing 1 changed file with 35 additions and 29 deletions.
64 changes: 35 additions & 29 deletions chat/ReadMe.md
Original file line number Diff line number Diff line change
Expand Up @@ -9,52 +9,58 @@
| :-----------------------------------------------------------------------: |
| <sub dir="rtl">مسیری که کاربر برای دریافت خدمات شما در چت طی می کند</sub> |


## بازشدن برنامه توسط کاربر

۱. در هر زمانی که چت دیوار بخواهد برنامهٔ شما را باز کند، درخواستی با جزییات زیر به آدرسی که در فیلد ‍`Session Initialization URL` [در پنل کنار وارد کرده‌اید](/management/#لیست-پارامترها) ارسال می‌کند و در صورت دریافت پاسخ معتبر، کاربر را به آدرسی که در پاسخ وجود دارد هدایت می‌کند.

```http request
POST {{YOUR_INIT_URL}}
```http
POST https://your.app.ir
Content-Type: application/json
Authorization: {{YOUR_DIVAR_AUTH_HEADER}}
API_VERSION: 2
authorization: {{ Divar Identification Key }}
{
"return_url": "https://divar.ir/"
"source": "CHAT_MESSAGE_ACTION",
"post_token": "wZC44q5D",
"conversation_id": "6b3d5cf7-9291-4fa9-892a-9d07e300daea",
"user_side": "Supply",
"extra_data": {
"your_key_1": "your value",
"your_key_2": "your value"
}
"extra_data": {
"location": {
"latitude": "اگر برنامهٔ شما از مسیر دکمه‌هایی که چت دیوار زیر پیام‌های از نوع موقعیت مکانی درج می‌کند، باز شود، این اطلاعات هم در درخواست ارسالی از سمت دیوار خواهید داشت.",
"longitude": "51.34850978851319"
}
},
"callback_url": "آدرسی که کاربر پس از انجام فرایند در سرویس شما باید به آن هدایت شود",
"post_token": "توکن آگهی",
"conversation_id": "813d3106-dcb8-4283-b2a3-29e8edcc4dbc",
"user_id": "شناسهٔ کسی که روی لینک کلیک کرده یا فرایند را شروع کرده",
"peer_id": "شناسهٔ طرف مقابل چت",
"supplier": {
"id": "شناسهٔ کاربر فروشنده (صاحب آگهی)"
},
"demand": {
"id": "شناسهٔ کاربر خریدار"
},
}
```

آدرسی که درخواست به آن زده می‌شود را می‌توانید در پنل کنار دیوار، با عنوان `لینک درخواست دیوار برای گرفتن آدرس شروع` تنظیم کنید.
```

- پارامتر `post_token` شناسهٔ آگهی‌ مورد نظر است.
- پارامتر `conversation_id` شناسه‌ی مکالمه‌ای است که کاربر از آن به سمت اپ شما هدایت شده است.
- پارامتر `user_id` شناسهٔ کاربریست که با اپلیکیشن تعامل کرده.
- پارامتر `peer_id` شناسهٔ طرف دیگر چت است.
- برای [دریافت اجازه‌ها][راهنما » احراز باز] یا [استفاده از امکانات مربوط به چت][امکانات چت]، هر سهٔ این پارامترها را ارائه کنید.
- پارامتر `callback_url` ادرسی‌ست که باید کاربر را بعد از اتمام فرآیند به آن هدایت کنید.
- مقدار `authorization` معادل پارامتر `Divar Identification Key`، که در سطح اپلیکیشن قابل تنظیم است، قرار داده خواهد شد. با خواندن این هدر و مقایسهٔ آن، می‌توانید منبع درخواست را احراز کرده مطمئن شوید درخواست از جانب دیوار ارسال شده است.

| نام فیلد | نوع | حداکثر طول | توضیحات |
|:----------------|:-----------------:|:----------:|-----------------------------------------------------------------:|
| return_url | String | 2048 | آدرسی که کاربر پس از اتمام فراید باید به آن بازگردد |
| source | String | 20 | محلی که کاربر از آن به سمت برنامه شما هدایت شده است |
| post_token | String (Nullable) | 10 | توکن پست (در صورت وجود) |
| conversation_id | String (Nullable) | 64 | شناسه مرتبط با چت (در صورت وجود) |
| user_side | String (Nullable) | 50 | نوع کاربر (خریدار یا فروشنده) |
| extra_data | JSON | N/A | داده‌های اضافی که از سمت برنامه‌ی شما در کلید data قرار داده شده |
<br>

در پاسخ به این درخواست، می‌بایست آدرسی را به شکل زیر برگردانید. کاربر به أدرسی که در قسمت `url` پاسخ شماست هدایت می‌شود و با برنامهٔ تحت وب شما تعامل می‌کند.

انتظار می‌رود که در پاسخ به این درخواست، پاسخ موفق با کد وضعیت ۲۰۰ برگردانده شود
و بدنه‌ی پاسخ به صورت زیر باشد:
```json
```JSON
{
"url": "https://your-domain.com/landings/6b3d5cf7-9291-4fa9-892a-9d07e300daea"
"status": "200",
"message": "success",
"url": "https://yourdomain.com/some/where/to/start"
}
```


<br>

## ارائهٔ خدمات در برنامهٔ تحت وب شما و بازگشت به دیوار
Expand Down

0 comments on commit b78cbd0

Please sign in to comment.