معرفی

این وب‌سرویس اطلاعات کامل یک تماس مشخص را با استفاده از شناسهٔ تماس برمی‌گرداند. برای دریافت داده، باید توکن وب‌سرویس معتبر و مقدار call_id را ارسال کنید.

نکته: این مسیر با دریافت call_id جزئیات یک تماس را برمی‌گرداند؛ برای دریافت فهرست تماس‌ها ابتدا شناسهٔ تماس موردنظر را از خروجی تماس‌ها یا گزارش‌های تماس دریافت کنید.

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

GET https://panel.telefonchy.com/webservice/v1/call?call_id={YOUR_CALL_ID}

مقدار call_id به‌صورت پارامتر نشانی ارسال می‌شود و توکن وب‌سرویس باید در هدر درخواست قرار گیرد.

هدرهای درخواست

نام

اجباری

نوع داده

توضیحات

webservice-token

بله

String

توکن وب‌سرویس را از پنل کاربری دریافت کنید.


پارامترهای درخواست

نام

اجباری

نوع داده

توضیحات

call_id

بله

String

شناسهٔ تماس که در خروجی تماس‌ها یا گزارش‌های تماس قابل دریافت است.

نکته: درخواست از نوع GET است؛ بنابراین call_id در بدنهٔ درخواست قرار نمی‌گیرد و باید به نشانی درخواست افزوده شود.



نمونهٔ درخواست


نمونهٔ cURL

curl -i -H "webservice-token: {YOUR_TOKEN}" \
  'https://panel.telefonchy.com/webservice/v1/call?call_id={YOUR_CALL_ID}'

نمونهٔ PHP

<?php
$ch = curl_init();

curl_setopt(
    $ch,
    CURLOPT_URL,
    'https://panel.telefonchy.com/webservice/v1/call?call_id={YOUR_CALL_ID}'
);

curl_setopt($ch, CURLOPT_POST, 0);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);

curl_setopt($ch, CURLOPT_HTTPHEADER, [
    'webservice-token: {YOUR_TOKEN}',
]);

$server_output = curl_exec($ch);
curl_close($ch);

$data = json_decode($server_output);
var_dump($data);

نکته: نام هدر را به‌صورت webservice-token با خط تیره ارسال کنید.


نمونهٔ پاسخ موفق

{
  "status": "Ok",
  "code": 200,
  "message": null,
  "data": [
    {
      "object_id": "674efa77f22s655597d7b70",
      "node": "2",
      "record_id": null,
      "file_id": null,
      "file_saved": "0",
      "service_id": "3Ev15-782bp77d8-3d4b-****-98bc-4e7c2cca4231",
      "cuid": "1733889127.549821",
      "type": "outgoing",
      "trunk": "219***5458",
      "status": "NO ANSWER",
      "note": null,
      "call_source": "93**45",
      "call_dest": "91****4035",
      "call_number": null,
      "time_wait": "18",
      "time_talk": "0",
      "updated_at": "2024-12-03 16:10:39",
      "created_at": "2024-12-03 16:02:37",
      "ended_at": "2024-12-03 16:02:55"
    }
  ]
}


ساختار پاسخ

فیلد

توضیحات

status

وضعیت کلی پردازش درخواست است. مقدار Ok نشان می‌دهد درخواست با موفقیت پردازش شده است.

code

کد وضعیت پاسخ است. مقدار 200 نشان‌دهندهٔ موفقیت درخواست است.

message

پیام تکمیلی سرور است. مقدار null یعنی پیام اضافه‌ای ارسال نشده است.

data

آرایهٔ اطلاعات تماس است. هر شیء در این آرایه یک تماس را نشان می‌دهد.


فیلدهای اطلاعات تماس

فیلد

توضیحات

object_id

شناسهٔ یکتای شیء تماس در پایگاه داده

node

شناسهٔ نود سروری که تماس در آن ثبت شده است

record_id

شناسهٔ رکورد تماس، در صورت وجود فایل ضبط‌شده

file_id

شناسهٔ فایل صوتی ذخیره‌شدهٔ تماس، در صورت وجود

file_saved

وضعیت ذخیره‌شدن فایل صوتی؛ مقدار 0 یعنی فایل ذخیره نشده است

service_id

شناسهٔ سرویسی که تماس به آن مرتبط است

cuid

شناسهٔ یکتای تماس برای پیگیری و شناسایی آن

type

نوع تماس؛ مانند incoming برای تماس ورودی و outgoing برای تماس خروجی

trunk

شمارهٔ ترانک یا خط ارتباطی تماس

status

وضعیت تماس؛ مانند ANSWERED، NO ANSWER یا BUSY

note

یادداشت یا توضیح تکمیلی تماس، در صورت ثبت

call_source

شمارهٔ مبدأ یا تماس‌گیرنده

call_dest

شمارهٔ مقصد تماس

call_number

شمارهٔ مرتبط با برقراری یا دریافت تماس، در صورت وجود

time_wait

مدت انتظار پیش از پاسخ تماس، بر حسب ثانیه

time_talk

مدت مکالمهٔ برقرارشده، بر حسب ثانیه

updated_at

زمان آخرین به‌روزرسانی اطلاعات تماس

created_at

زمان ثبت تماس

ended_at

زمان پایان تماس


نکات مهم و امنیتی

  • توکن وب‌سرویس را مانند رمز عبور نگه دارید و آن را در کدهای عمومی یا سمت کاربر نمایش ندهید.

  • پیش از پردازش پاسخ، مقدارهای status و code را بررسی کنید.

  • مقدار null به‌معنای نبود اطلاعات برای آن فیلد است و نباید با رشتهٔ خالی اشتباه گرفته شود.

  • زمان‌ها با قالب سال-ماه-روز ساعت:دقیقه:ثانیه بازگردانده می‌شوند.

  • برای تشخیص تماس‌های پاسخ‌داده‌نشده، مقدارهای status و time_talk را هم‌زمان بررسی کنید.

دانلود فایل آموزشی این پست به صورت PDF