دریافت لیست تماس ها

دریافت لیست تماس ها

برای دریافت لیست تماس ها بهمراه اطلاعات کامل هر تماس می‌توانید با فراخوانی آدرس زیر اقدام نمایید:

				
					`[GET]` https://panel.telefonchy.com/webservice/v1/calls
				
			

Header

نام اجباری بودن نوع داده توضیحات
webservice-token بله String توکن وبسرویس خود را می‌توانید از پنل کاربری دریافت نمایید

body

نام اجباری بودن نوع داده توضیحات
service_id yes String شناسه سرویس خود را می‌توانید از پنل کاربری دریافت نمایید
call_dest no String شماره مقصد تماس. برای فیلتر کردن تماس‌ها با مقصد خاص.
date_from no Date تاریخ شروع برای فیلتر کردن تماس‌ها. فرمت تاریخ باید Y/m/d 00:00 باشد. تاریخ به صورت شمسی میباشد.
date_to no Date تاریخ پایان برای فیلتر کردن تماس‌ها. فرمت تاریخ باید Y/m/d 00:00 باشد. تاریخ به صورت شمسی میباشد.
type no String نوع تماس. می‌تواند "incoming" یا "outgoing" باشد.
status no String وضعیت تماس. مثلا "awnser" یا "no-answer".
call_source no String منبع تماس. شماره ورودی تماس میباشد
exten no String شماره داخلی تماس. برای فیلتر کردن تماس‌ها بر اساس داخلی.
trunk_id no String شناسه ترانک برای فیلتر کردن تماس‌ها بر اساس شماره خط.
note no String یادداشت‌های مربوط به تماس.
sort no String این متغیر باید "ASC" یا "DESC" باشد. پیش‌فرض = DESC.
page no Int شماره صفحه برای pagination. پیش‌فرض = 1.

نمونه کد و خروجی

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

				
					# curl shell code

# Get method calling
curl -i -H "webservice-token: {YOUR_TOKEN}"  'https://panel.telefonchy.com/webservice/v1/calls?service_id={YOUR_SERVICE_ID}&page=1&sort=DESC'

				
			
				
					// php curl code

#GET method calling
$ch = curl_init();

curl_setopt($ch, CURLOPT_URL,"https://panel.telefonchy.com/webservice/v1/calls?service_id={YOUR_SERVICE_ID}&page=1");

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

$headers = [
    'webservice_token: {YOUR_TOKEN}',
];

curl_setopt($ch, CURLOPT_HTTPHEADER, $headers);

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

// dd code 😉
dump(json_decode($server_output));
die(1);
				
			

نمونه خروجی درخواست

				
					{
    "status": "Ok",
    "code": 200,
    "message": null,
    "data": {
        "calls": [
            {
                "cuid": "1733821495.716007",
                "server_id": "2",
                "call_source": "123456",
                "type": "outgoing",
                "status": "ANSWERED",
                "exceptions": {
                    "exten": [],
                    "record": [],
                    "route": []
                },
                "route": [
                    {
                        "type": "OutgoingRoute",
                        "name": "Outgoing Route",
                        "duration": 10.5,
                        "date": "2024-12-10T12:35:00"
                    },
                    {
                        "type": "SmartApi",
                        "name": "Identifier",
                        "duration": 5.2,
                        "date": "2024-12-10T12:35:10"
                    }
                ],
                "time_wait": 12,
                "time_talk": 180,
                "started_at": "2024-12-10 12:30:00",
                "ended_at": "2024-12-10 12:32:00",
                "jalali_started_at": "1403-09-20 12:30:00",
                "jalali_ended_at": "1403-09-20 12:32:00",
                "created_at": "2024-12-10T12:00:00.000000Z",
                "updated_at": "2024-12-10T12:01:00.000000Z",
                "trunk_id": "t64k-35e34444-4f6b-48e3-a375-72e7542d0fcd",
                "trunk": "02191300474",
                "service_id": "3Ev15-48bb6944-10ce-4dff-aa09-b45919417287",
                "exten": {
                    "exten_id": "123456",
                    "number": "123456",
                    "name": "حسیبا عرفانی"
                },
                "contact": {
                    "call_source": {
                        "type": "exten",
                        "contact_id": 123456",
                        "name": "حسیبا عرفانی"
                    },
                    "call_dest": {
                        "type": "contact",
                        "contact_id": "12345",
                        "name": "مریم فرزین"
                    }
                },
                "file_record": "20241210_v2.1733821495.716007.mp3",
                "call_dest": "09117797716",
                "file_id": "4i1E-96dad9eb-2afe-4065-9901-e222691a6bed",
                "id": "6758031815737197e20aaa39"
            }
        ]
    },
    "paginator": {
        "current": 1,
        "before": 1,
        "next": 1,
        "last": 1,
        "total_pages": 1,
        "total_items": 1
    }
}

				
			

توضیحات فیلد های خروجی

  1. status:

    • نوع پاسخ دریافتی از سرور را نشان می‌دهد.
    • در اینجا "status": "Ok" نشان‌دهنده موفقیت‌آمیز بودن درخواست است.
  2. code:

    • کد وضعیت پاسخ است. در اینجا برابر با 200 است که نشان‌دهنده موفقیت‌آمیز بودن درخواست می‌باشد.
  3. message:

    • پیام اضافی از سرور برای توضیح بیشتر. در اینجا null است که به این معناست که پیام خاصی وجود ندارد.
  4. data:

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

    هر تماس شامل فیلدهای زیر است:

    • cuid: شناسه منحصر به فرد تماس که برای شناسایی تماس‌ها استفاده می‌شود.
    • server_id: شناسه سرور که تماس در آن ثبت شده است.
    • call_source: شماره تماس منبع (تماس‌گیرنده). در اینجا “123456” به‌عنوان شماره تماس منبع نمایش داده شده است.
    • type: نوع تماس که می‌تواند incoming (ورودی) یا outgoing (خروجی) باشد. در اینجا نوع تماس outgoing است.
    • status: وضعیت تماس. در اینجا وضعیت تماس "ANSWERED" است که نشان‌دهنده این است که تماس پاسخ داده شده است.
    • exceptions: استثناها برای تماس که می‌تواند شامل فیلدهای مختلف باشد. در اینجا خالی است.
    • route: مسیرهای مختلفی که تماس از آن‌ها عبور کرده است. این مسیرها به‌طور معمول شامل مراحل مختلف پردازش تماس می‌شوند.
      • برای مثال:
        • "OutgoingRoute": مسیر خروجی تماس
        • "SmartApi": مسیر API هوشمند که برای شناسایی تماس استفاده می‌شود.
    • time_wait: مدت زمان انتظار قبل از پاسخ به تماس به ثانیه. در اینجا ۱۲ ثانیه است.
    • time_talk: مدت زمان مکالمه به ثانیه. در اینجا ۱۸۰ ثانیه است که نشان‌دهنده طول مدت مکالمه می‌باشد.
    • started_at: زمان شروع تماس در فرمت استاندارد تاریخ و زمان.
    • ended_at: زمان پایان تماس در فرمت استاندارد تاریخ و زمان.
    • jalali_started_at: زمان شروع تماس به فرمت تاریخ شمسی (هجری شمسی).
    • jalali_ended_at: زمان پایان تماس به فرمت تاریخ شمسی.
    • created_at: زمان ایجاد تماس در پایگاه داده.
    • updated_at: زمان آخرین به‌روزرسانی اطلاعات تماس.
    • trunk_id: شناسه ترانک (خط ارتباطی) که تماس از آن برقرار شده است.
    • trunk: شماره ترانک (خط ارتباطی) که تماس از آن برقرار شده است.
    • service_id: شناسه سرویس که تماس به آن مربوط می‌شود.
    • exten: اطلاعات تماس داخلی که شامل شناسه، شماره و نام فرد تماس‌گیرنده است.
      • exten_id: شناسه تماس داخلی
      • number: شماره تماس داخلی
      • name: نام فرد تماس‌گیرنده
    • contact: اطلاعات مربوط به تماس‌گیرنده و تماس‌گیرنده مقصد.
      • call_source: شماره تماس‌گیرنده و اطلاعات مربوط به آن.
      • call_dest: شماره تماس مقصد و اطلاعات مربوط به آن.
    • file_record: نام فایل صوتی ذخیره شده از تماس. این فیلد null نیست و نشان‌دهنده فایل ضبط‌شده‌ی تماس است.
    • call_dest: شماره مقصد که تماس به آن انجام شده است.
    • file_id: شناسه فایل صوتی مربوط به تماس.
    • id: شناسه یکتای تماس که در پایگاه داده برای این تماس استفاده می‌شود.