Skip to content

Statistika

Qo'ng'iroqlar statistikasini olish uchun endpointlar. Dashboard va hisobotlar uchun ishlatiladi.

Ogohlantirish

Barcha endpointlar Bearer token talab qiladi. Batafsil: Auth

Umumiy parametrlar

Ko'pgina statistika endpointlari from va to parametrlarini talab qiladi:

FieldTypeRequiredDescription
fromdateYesBoshlanish sanasi (Y-m-d yoki Y-m-d H:i:s)
todateYesTugash sanasi (Y-m-d yoki Y-m-d H:i:s)
external_numberstringNoTashqi raqam bo'yicha filtrlash

Misol parametrlar

text
?from=2026-01-01&to=2026-01-31
?from=2026-01-01 00:00:00&to=2026-01-31 23:59:59
?from=2026-01-01&to=2026-01-31&external_number=781130590

Umumiy qo'ng'iroqlar soni

Endpoint

GET /statistic/calls-count

Berilgan davr uchun kiruvchi, chiquvchi va ichki qo'ng'iroqlarning umumiy va holat bo'yicha sonini qaytaradi.

Response

FieldTypeDescription
result.all.incomingintJami kiruvchi qo'ng'iroqlar
result.all.outgoingintJami chiquvchi qo'ng'iroqlar
result.all.internalintJami ichki qo'ng'iroqlar
result.incoming.answeredintJavob berilgan kiruvchi
result.incoming.not_answeredintJavobsiz kiruvchi
result.incoming.totalintJami kiruvchi
result.outgoing.answeredintJavob berilgan chiquvchi
result.outgoing.not_answeredintJavobsiz chiquvchi
result.outgoing.totalintJami chiquvchi
result.internal.answeredintJavob berilgan ichki
result.internal.not_answeredintJavobsiz ichki
result.internal.totalintJami ichki

Example

json
{
  "status": "success",
  "code": 200,
  "result": {
    "all": {
      "incoming": 150,
      "outgoing": 230,
      "internal": 45
    },
    "incoming": {
      "answered": 120,
      "not_answered": 30,
      "total": 150
    },
    "outgoing": {
      "answered": 200,
      "not_answered": 30,
      "total": 230
    },
    "internal": {
      "answered": 40,
      "not_answered": 5,
      "total": 45
    }
  },
  "message": "Ok"
}

Soat bo'yicha statistika

Endpoint

GET /statistic/calls-by-hour

Har soat uchun qo'ng'iroqlar sonini qaytaradi. Grafik uchun ishlatiladi.

Response

FieldTypeDescription
result.incoming.allarrayKiruvchilar soat bo'yicha
result.incoming.not_answeredarrayJavobsiz kiruvchilar soat bo'yicha
result.outgoing.allarrayChiquvchilar soat bo'yicha
result.outgoing.not_answeredarrayJavobsiz chiquvchilar soat bo'yicha
result.internal.allarrayIchkilar soat bo'yicha
result.internal.not_answeredarrayJavobsiz ichkilar soat bo'yicha

Har bir array elementi:

FieldTypeDescription
date_hourstringSana va soat (2026-01-13 09:00:00)
call_countintShu soatdagi qo'ng'iroqlar soni

Example

json
{
  "status": "success",
  "code": 200,
  "result": {
    "incoming": {
      "all": [
        { "date_hour": "2026-01-13 09:00:00", "call_count": 12 },
        { "date_hour": "2026-01-13 10:00:00", "call_count": 18 },
        { "date_hour": "2026-01-13 11:00:00", "call_count": 25 }
      ],
      "not_answered": [
        { "date_hour": "2026-01-13 09:00:00", "call_count": 2 },
        { "date_hour": "2026-01-13 10:00:00", "call_count": 3 },
        { "date_hour": "2026-01-13 11:00:00", "call_count": 5 }
      ]
    },
    "outgoing": { "all": [...], "not_answered": [...] },
    "internal": { "all": [...], "not_answered": [...] }
  },
  "message": "Ok"
}

Kun bo'yicha statistika

Endpoint

GET /statistic/calls-by-day

Har kun uchun qo'ng'iroqlar sonini qaytaradi.

Response tuzilishi calls-by-hour bilan bir xil, lekin date_hour o'rniga kun qiymati bo'ladi.


Oy bo'yicha statistika

Endpoint

GET /statistic/calls-by-month

Har oy uchun qo'ng'iroqlar sonini qaytaradi.

Response tuzilishi calls-by-hour bilan bir xil, lekin oy bo'yicha gruppalashtilgan.


Tashqi raqamlar bo'yicha statistika

Endpoint

GET /statistic/calls-by-external-number

Tashqi telefon raqamlari (SIP trunk raqamlari) bo'yicha qo'ng'iroqlar statistikasini qaytaradi.

Response tuzilishi calls-by-hour bilan bir xil, lekin tashqi raqam bo'yicha.


Foydalanuvchilar bo'yicha statistika

Endpoint

GET /statistic/calls-by-users

Har bir foydalanuvchi (operator) uchun chiquvchi va kiruvchi qo'ng'iroqlar statistikasini qaytaradi.

Request

FieldTypeRequiredDescription
fromdateYesBoshlanish sanasi
todateYesTugash sanasi
statusinteger|nullNoHolat bo'yicha filter (1=Answered, 2=Not answered)

Response

FieldTypeDescription
resultarrayFoydalanuvchilar statistikasi
result[*].numberstringFoydalanuvchi modul raqami
result[*].outgoing_countintChiquvchi qo'ng'iroqlar soni
result[*].outgoing_durationintChiquvchi umumiy davomiylik (soniya)
result[*].outgoing_conversationintChiquvchi suhbat davomiyligi (soniya)
result[*].incoming_countintKiruvchi qo'ng'iroqlar soni
result[*].incoming_durationintKiruvchi umumiy davomiylik (soniya)
result[*].incoming_conversationintKiruvchi suhbat davomiyligi (soniya)

Example

json
{
  "status": "success",
  "code": 200,
  "result": [
    {
      "number": "101",
      "outgoing_count": 45,
      "outgoing_duration": 3600,
      "outgoing_conversation": 3200,
      "incoming_count": 78,
      "incoming_duration": 6200,
      "incoming_conversation": 5800
    },
    {
      "number": "102",
      "outgoing_count": 30,
      "outgoing_duration": 2400,
      "outgoing_conversation": 2100,
      "incoming_count": 55,
      "incoming_duration": 4500,
      "incoming_conversation": 4100
    }
  ],
  "message": "Ok"
}

Qo'ng'iroqlar tarixidan statistika

Endpoint

GET /statistic/calls-count-by-history

Qo'ng'iroqlar tarixiga asoslanib filtrlangan statistika. Call history endpointi bilan bir xil filter parametrlarini qabul qiladi.

Request

Call history filterlari bilan bir xil: filter.type, filter.status, filter.from, filter.to, filter.src, filter.dst, filter.external_number va boshqalar.