TR EN DE AZ
GitHub Repository mhrgl.com

Santral Xüsusiyyətləri & Əsas Modullar

AiPBX məhdudlaşdırıcı təhlükəsizlik divarlarını aşan Port 443 ALPN stream multipleksləşdirmə, biometrik Passkey kimlik təsdiqi, Asterisk 22 nüvəsi, yığım ekranı daxilində ani mesajlaşma və Microsoft Teams Direct Routing dəstəyi ilə müasir müəssisələrin bütün telekommunikasiya ehtiyaclarını bir çatı altında həll edir.

1. Daxili Nömrə (Extension) İdarəetməsi

AiPBX daxili nömrə sistemi Asterisk 22 PJSIP steki üzərində qurulub. İstifadəçilər istər masadakı aparat IP telefondan, istər brauzerdən, istərsə də mobil cihazlarından eyni daxili nömrə ilə danışa bilərlər:

Daxili Nömrə Növü Protokol & Nəqliyyat İstifadə Sahəsi
Hardware SIP Phone SIP / PJSIP (UDP, TCP, TLS) Yealink, Fanvil, Grandstream, Cisco, Snom, Gigaset DECT.
WebRTC Webphone WSS (Port 443 ALPN) + DTLS-SRTP Əlavəsiz Chrome, Edge, Firefox, Safari brauzer zəngləri.
Mobile Client WSS / TURNS + FCM / APNs Push AiPBX Android (Kotlin) & iOS (Swift) native apps.
Digital Fax T.38 / Spooler Daxil olan faksları PDF kimi e-poçta göndərən rəqəmsal faks daxili nömrəsi.

2. Çoxsəviyyəli Səsli Cavab Sistemi (IVR)

  • Sonsuz Dərinlikdə Alt Menyular: Şöbələrə və dillərə görə bölünən çoxqatlı ağac strukturu.
  • Rəqəm Yığma Vaxt Limiti (Digit Timeout): Yığım üçün ayrılan gözləmə müddəti (1–15 saniyə) dəqiq tənzimlənə bilər.
  • Birbaşa Daxili Zəng (Direct Dial): Anons səslənərkən daxili nömrəni bilən zəng edən birbaşa yığaraq hədəfə qoşula bilər.
  • Yanlış Yığım & Vaxt Aşımı: Səhv yığımda və ya cavabsızlıqda operatora və ya növbəyə etibarlı yönləndirmə.
  • İş Saatı & Bayram Şərtləri: İş saatları və rəsmi bayramlar üçün xüsusi anonslar və gecə növbətçisinə yönləndirmələr.

3. Daxil Olan (DID) və Çıxan Zəng Marşrutlaşdırması

Modul İmkanlar & Süzgəclər
Inbound DID Routes Operatorların xarici xətt nömrələrini Regex ilə uyğunlaşdırır; IVR, növbə və ya birbaşa daxili nömrəyə yönləndirir.
Outbound Routes Daxili nömrə və şöbə əsaslı çıxan zəng qaydaları (şəhərdaxili, mobil, beynəlxalq icazə ayrımı).
Trunk Failover Əsas xətdə nasazlıq və ya kəsinti olduqda avtomatik olaraq 2-ci və 3-cü ehtiyat trunk-a keçir.

4. WebRTC Brauzer Telefonu (Softphone)

AiPBX veb idarəetmə panelinə yerləşdirilmiş WebRTC telefonu ilə heç bir əlavə tətbiq quraşdırmadan birbaşa danışa bilərsiniz:

  • Opus HD Səs: Bant genişliyi dalğalanmalarında belə yüksək keyfiyyətli insan səsi.
  • DTMF Klaviaturası: Səsli cavab menyularında dərhal yığım.
  • Təkmil İdarəetmə: Gözlətmə (Hold), Səssizləşdirmə (Mute), Ötürmə (Blind & Attended Transfer).
  • Səs Avadanlığı Seçimi: Qulaqlıq və mikrofon cihazlarını brauzer daxilindən dəyişmək.

5. Rəqəmsal Faks Serveri (FoIP / T.38)

  • Daxil Olan Faks (Fax-to-Email): Daxil olan fakslar avtomatik olaraq PDF-ə çevrilir və e-poçt ünvanlarına göndərilir.
  • Çıxan Faks (Web-to-Fax): Veb paneldən PDF yükləyib nömrə daxil etməklə avtomatik göndərmə təmin olunur.

6. Santral Funksiya Kodları (Feature Codes / Ulduz Kodlar)

Code Funksiyanın Adı Rollar Təsvir
*90 Zəng Dinləmə (Spy) Supervayzer & Rəhbər *90 yığın, sonra dinləniləcək daxili nömrəni daxil edin; söhbəti səssizcə dinləyirsiniz.
*91 Pıçıltı (Whisper) Supervayzer & Rəhbər Yalnız operatorun eşidəcəyi şəkildə danışaraq kouçinq edin; zəng edən sizi eşitmir.
*92 Zəngə Qoşulma (Barge) Supervayzer & Rəhbər Söhbətə üçüncü tərəf kimi qoşulun; hər iki tərəf sizi eşidir.
*81 / *81[KuyrukID] Növbəyə Giriş Çağrı Mərkəzi Operatorları Bütün növbələrə və ya müəyyən bir növbəyə operator kimi daxil olun.
*80 / *80[KuyrukID] Növbədən Çıxış Çağrı Mərkəzi Operatorları Bütün növbələrdən və ya müəyyən bir növbədən çıxın.
*22[MolaID] Fasiləyə Başla Bütün İstifadəçilər Seçilmiş fasilə səbəbi ilə növbələrdə fasiləyə keçin (məs. *221 = 1 nömrəli fasilə).
*23 Fasilədən Qayıdış Bütün İstifadəçilər Fasilədən qayıdıb yenidən zəng qəbul etməyə başlayın.
*72 Zəng Yönləndirmə Bütün İstifadəçilər Bütün zəngləri daxil etdiyiniz nömrəyə yönləndirin.
*73 Yönləndirmənin Ləğvi Bütün İstifadəçilər Aktiv zəng yönləndirməsini silin.
*78 Narahat Etməyin (DND) Bütün İstifadəçilər Narahat etməyin rejimini açıb-bağlayın.
*20 Qrupdan Zəngin Götürülməsi Bütün İstifadəçilər Qrupunuzda çalan zəngi öz telefonunuza götürün.
*21 Daxili Nömrədən Zəngin Götürülməsi Bütün İstifadəçilər *21, sonra daxili nömrə: həmin daxili nömrədə çalan zəngi götürün.
*97 Mənim Səsli Poçtum Bütün İstifadəçilər Öz səsli poçt qutunuza birbaşa daxil olun.
*98 Səsli Poçta Giriş Bütün İstifadəçilər Qutu nömrəsi və PIN ilə istənilən telefondan səsli poçta daxil olun.

7. Biometrik Passkey (WebAuthn / FIDO2) & 2FA

AiPBX korporativ santral idarəetmə panelinə FIDO2 / WebAuthn standartında parolsuz biometrik giriş imkanı qazandırıb. Bu sayədə klassik parol oğurluğu, kobud güc (brute-force) və ya fişinq (phishing) hücumları riyazi olaraq qarşısı alınır:

  • Platforma Doğrulayıcıları: Apple Touch ID / Face ID, Windows Hello barmaq izi/üz tanıma, Android Biometrik Kilid.
  • Daşına Bilən Aparat Açarları: YubiKey, Google Titan və FIDO2 sertifikatlı USB/NFC təhlükəsizlik açarları.
  • TOTP İkipilləli Müdafiə: Google Authenticator, Microsoft Authenticator və 1Password ilə 6 rəqəmli, zaman möhürlü birdəfəlik kodlar.

8. Google OAuth 2.0 ilə Bir Kliklə Korporativ Giriş

Google Workspace istifadə edən təşkilatlarda əməkdaşların ayrı-ayrı parol əzbərləməsinə ehtiyac qalmır. Daxili nömrədə müəyyən edilmiş korporativ e-poçt ünvanı (@sirket.az) Google hesabı ilə uyğunlaşdığı anda Veb Portalda, Android və iOS softphone müştərilərində bir kliklə daxil olmaq mümkündür.

9. Go Ani Söhbət & Mesajlaşma Mühərriki (aipbx-chat)

AiPBX arxitekturasına inteqrasiya edilmiş müstəqil Go mikroxidməti (aipbx-chat) TCP Port 8086 üzərindən yüksək eyni vaxtlılıqlı korporativ mesajlaşma təqdim edir:

  • Goroutine Paralelliyi: Minimum RAM istehlakı ilə on minlərlə ani WebSocket bağlantısını idarə edir.
  • Təkbətək və Qrup Söhbətləri: Şöbə və layihə əsaslı, 256 nəfərədək şifrəli söhbət otaqları.
  • Media & Əlavə Fayl Dəstəyi: Şəkil sıxılması, səsli mesaj yazıları və sənəd paylaşımı.
  • FCM / APNs İnteqrasiyası: Tətbiq bağlı olarkən belə dərhal mobil oyatma və push bildirişinin çatdırılması.

10. Dinamik Zəng İcazələri (Call Barring) & Müqayisə Matrisi

AiPBX santral daxili nömrələrini 6 pilləli icazə qruplarına (Daxili, Təcili, Şəhərdaxili, Şəhərlərarası, Mobil, Beynəlxalq) ayıraraq şirkət büdcəsini sui-istifadəyə qarşı qoruyur. Ətraflı texniki xüsusiyyətləri, şəbəkə port xəritəsini və Cisco/Avaya müqayisəsini görmək üçün interaktiv JSON cədvəlinə baxın:

AiPBX İnteraktiv JSON Cədvəl Sistemi & Matrisini Aç →

11. Port 443 Nginx L4 Stream & ALPN Protokol Multipleksləşdirməsi

Otel, xəstəxana, hava limanı və bank şəbəkələri kimi məhdudlaşdırıcı mühitlərdə çölə doğru çox vaxt yalnız TCP 443 açıqdır. AiPBX-də 443-ü Nginx L4 stream modulu dinləyir və ssl_preread ilə TLS əl sıxışmasındakı ALPN sahəsini bağlantını açmadan oxuyur. ALPN varsa (brauzerlər və mobil tətbiqlər), trafik Apache-yə (:8443) gedir; Apache veb portalı təqdim edir, /ws yolunu Asterisk WebRTC-yə, /chat yolunu Go söhbət xidmətinə ötürür. ALPN yoxdursa, trafik coturn TURNS-ə (:5349) gedir və WebRTC mediası bu məhdud şəbəkələrdə də axır. Müştərinin real IP-si PROXY protokolu ilə daşınır. Masaüstü IP telefonlar, trunk-lar və Microsoft Teams standart SIP portlarından (5060/5061) istifadə edir.

/etc/nginx/aipbx-stream.conf — install.sh tərəfindən yaradılır
stream {
    map $ssl_preread_alpn_protocols $aipbx_backend {
        default     127.0.0.1:8443;    # ALPN present: Apache (portal, /ws WebRTC, /chat)
        ""          127.0.0.1:15349;   # no ALPN: TURNS (via PROXY-stripping relay)
        ~stun\.turn 127.0.0.1:15349;   # RFC 7443 TURN clients
    }

    server {
        listen 443;
        listen [::]:443;
        ssl_preread on;
        proxy_pass $aipbx_backend;
        proxy_protocol on;             # real client IP for Apache / Fail2ban
        proxy_timeout 3600s;
    }

    server {
        listen 127.0.0.1:15349 proxy_protocol;
        proxy_pass 127.0.0.1:5349;     # coturn TURNS
    }
}
  • Sıfır Port Çirklənməsi: Veb, WebRTC, söhbət və TURNS üçün çölə tək bir TCP 443 portu kifayətdir.
  • Aparat Sürətində Keçid: Nginx TLS-i açmır; şifrələmə Apache və coturn-a qədər pozulmadan daşınır.

12. Yığım Ekranında Söhbət Otağı & Mobil Softphone

AiPBX-in yerli Android (Kotlin) və iOS (Swift) tətbiqləri zəng ekranının içinə yerləşdirilmiş real vaxt daxili söhbət otağı təqdim edir. İstifadəçi telefonla danışarkən zəng ekranından çıxmadan və zəngi gözlətməyə almadan qarşı tərəfə ani mətn mesajı, ünvan, müştəri kodu və ya şəkil göndərə bilər. Arxa planda müstəqil Go WebSocket mikroxidməti işlədiyi üçün səs kanalında (WebRTC Opus) ən kiçik ilişmə və ya gecikmə olmur.

Go WebSocket In-Dialer Chat Protocol Payload
{
  "type": "dialer_chat",
  "call_id": "c7f918bc-21a4-4e78-9e12-38d58c89b210",
  "sender_ext": "1002",
  "receiver_ext": "1005",
  "timestamp": 1727173200,
  "payload": {
    "message": "Müşterinin fatura numarası: #TR-99412. Siparişi onaylıyorum.",
    "attachments": []
  }
}

13. Vizual CDR LinkedID Zəng Səyahəti (Call Journey Timeline)

Ənənəvi santrallarda zəng ötürüldükdə və ya növbəyə daxil olduqda CDR qeydləri parçalanır və zəngin əvvəldən axıra qədər yolunu izləmək mümkünsüz olur. AiPBX Asterisk LinkedID arxitekturası ilə zəngin bütün hissələrini (DID girişi, IVR menyu yığımı, zəng qrupu, ötürülən daxili nömrə, gözləmə müddəti və bitmə səbəbi) bir vizual zaman şkalasında (Interactive Timeline) xəritələşdirir.

MariaDB SQL — LinkedID Call Journey Aggregation Query
SELECT 
    c.uniqueid, c.linkedid, c.calldate, c.src, c.dst, 
    c.duration, c.billsec, c.disposition, c.lastapp, c.lastdata
FROM cdr c
WHERE c.linkedid = '1727171420.482'
ORDER BY c.calldate ASC;

14. Katib-Rəhbər Rejimi & VIP Süzgəcləmə (Screening)

Yüksək vəzifəli rəhbərlərin birbaşa narahat edilməsinin qarşısını alan ikimərhələli zəng süzgəcləmə sistemi. Rəhbərin daxili nömrəsinə gələn bütün zənglər avtomatik olaraq səlahiyyətli assistentin və ya katibin softphone-una yönləndirilir. Katib zəngi qəbul edib məsləhətli ötürmə (*21) ilə rəhbərə çatdırır. Rəhbər panelində müəyyən edilmiş VIP nömrələr (İdarə Heyəti, Ailə, Əsas Tərəfdaşlar) isə katib süzgəcini birbaşa keçərək rəhbərin telefonunu zəng çaldırır.

/etc/asterisk/extensions_boss_secretary.conf
[sub-boss-screening]
exten => _100[1-5],1,NoOp(Boss Secretary Screening for ${EXTEN})
 same => n,Set(IS_VIP=${DB(vip_whitelist/${CALLERID(num)})})
 same => n,GotoIf($["${IS_VIP}" = "1"]?direct_boss)
 same => n,Dial(PJSIP/2000,25,tT) ; Ring Executive Assistant
 same => n,Hangup()
 same => n(direct_boss),Dial(PJSIP/${EXTEN},30,tTkK)
 same => n,Hangup()

15. Dinamik Səsli Konfrans Otaqları & Canlı Veb Moderator

Asterisk app_confbridge ilə səsli görüş otaqları. Hər otağın portalda müəyyən edilmiş nömrəsi var; daxili və ya xarici istifadəçilər otaq nömrəsini yığaraq PIN təsdiqi ilə konfransa qoşulur. Veb idarəetmə panelindəki Canlı Moderator ekranından kimin danışdığını canlı izləmək, bir kliklə bütün iştirakçıları səssizləşdirmək (Mute All) və ya arzuolunmaz nömrələri otaqdan çıxarmaq (Kick) mümkündür.

16. Təkmil Səsli Poçt (Voicemail-to-Email MP3 & Web Player *97)

İstifadəçi məşğul olduqda, cavab vermədikdə və ya oflayn olduqda zəng edən şəxs fərdiləşdirilmiş səsli mesaja yönləndirilir. Yazılan mesaj arxa planda avtomatik olaraq yüngül, yüksək keyfiyyətli MP3 formatına çevrilir və zəng edənin nömrəsi, zəngin tarixi və müddəti ilə birlikdə əməkdaşın korporativ e-poçt ünvanına göndərilir. Bundan əlavə, istifadəçilər telefonlarından *97 yığaraq və ya veb portaldakı səs dalğası (waveform) pleyerindən mesajlarını dərhal dinləyə bilərlər.

17. Supervayzer Zəng Dinləmə, Pıçıltı və Müdaxilə (*90 / *91 / *92)

Supervayzer və rəhbər rolundakı istifadəçilər üçün 3 rejimli canlı söhbət nəzarəti (Asterisk ChanSpy). Kodu yığın, sonra daxili nömrəni daxil edin:
1. Dinləmə (*90): söhbəti səssizcə dinləyir.
2. Pıçıltı (*91): yalnız operator eşidir; müştəri supervayzeri eşitmir.
3. Qoşulma (*92): söhbətə üçüncü tərəf kimi qoşulur; hər iki tərəf eşidir.
Eyni əməliyyatlar çağrı mərkəzi panelindəki Dinlə / Pıçılda / Qoşul düymələri ilə də edilir. Digər rollar bu kodları yığdıqda yalnız siqnal səsi eşidir.

/etc/asterisk/pbx/extensions_featurecodes.conf — portal tərəfindən yaradılır
exten => *90,1,NoOp(Feature Code spy by ${CALLERID(num)})
 same => n,GotoIf($["${USER_ROLE}" = "admin" | "${USER_ROLE}" = "cc_manager"]?allowed_spy)
 same => n,Answer()
 same => n,Playback(beep)
 same => n,Hangup()
 same => n(allowed_spy),Answer()
 same => n,Read(SPYTARGET,,10,,3,10)
 same => n,ChanSpy(PJSIP/${SPYTARGET},b)      ; *91: qwb (whisper)  *92: qBb (barge)
 same => n,Hangup()

18. Zəng Qrupları (Ring Groups: Ring-All, Round-Robin, Hunt)

Şöbələrə (Satış, Dəstək, Mühasibat) gələn zənglərin ədalətli və fasiləsiz paylanması üçün 4 çevik strategiya:
• Ring-All (Hamısına Zəng): Qrupdakı bütün telefonlar eyni anda zəng çalır, ilk açan zəngi qəbul edir.
• Round-Robin (Növbəli Bərabər Paylama): Zənglər operatorlara növbə ilə bərabər ötürülür.
• Linear Hunt (Prioritet Sırası): Əvvəlcədən müəyyən edilmiş sıra siyahısına görə (məs. Baş Mütəxəssis > Ehtiyat Operator) zəng ötürülür.
• Memory Hunt (Pilləli Əlavə): İlk 10 saniyə 1-ci daxili nömrə zəng çalır, cavab verilməzsə 1-ci zəng çalmağa davam edərkən 2-ci daxili nömrə də zəng çalmağa başlayır.

19. Xətlərarası Tranzit Marşrutlaşdırma & DID Normallaşdırılması

Müxtəlif telekom operatorları, filiallararası IP tunelləri və xarici PBX sistemləri arasında körpü rolunu oynayan daşıyıcı səviyyəli marşrutlaşdırma arxitekturası. Daxil olan DID nömrəsindəki ölkə kodları (+994, 00994, 0) və operator prefiksləri regex ifadələri ilə kəsilir və ya standart E.164 beynəlxalq formatına çevrilir. Daxil olan zəng santralda bitmədən başqa bir SIP Trunk üzərindən dərhal xarici mobil nömrəyə və ya filial santralına yönləndirilə bilər.

20. Microsoft Teams Direct Routing TLS/SRTP SBC Şlüzü

AiPBX əlavə bahalı xarici SBC (Session Border Controller) avadanlığına ehtiyac olmadan Microsoft 365 Teams Direct Routing inteqrasiyası təmin edir. SIP TLS Port 5061, Microsoft-un etibarlı kök sertifikatları (DigiCert / Baltimore) və SRTP AES_CM_128 media şifrələmə tələbləri birbaşa Asterisk 22 PJSIP nüvəsində qarşılanır. Teams masaüstü və mobil istifadəçiləri korporativ santral daxili nömrələri və telekom xarici xətləri ilə fasiləsiz danışa bilərlər.

PowerShell — Microsoft Teams PSTN Gateway Provisioning
# 1. Register AiPBX SBC Gateway in Microsoft 365 Tenant
New-CsOnlinePSTNGateway -Fqdn "sbc.aipbx.bid" -SipSignalingPort 5061 `
    -MaxConcurrentSessions 100 -Enabled $true

# 2. Assign Voice Routing Policy to Teams User
Set-CsPhoneNumberAssignment -Identity "user@company.com" -PhoneNumber "+902129990001" -PhoneNumberType DirectRouting
Grant-CsOnlineVoiceRoutingPolicy -Identity "user@company.com" -PolicyName "AiPBX-PSTN-Policy"

21. Bulud TTS: Mətndən Anons

Süni İntellekt → Cloud TTS səhifəsi yazdığınız mətni bulud səsləndirmə xidmətləri ilə səsə çevirir. Nəticəni səhifədə dinləyə, MP3 kimi yükləyə və ya bir kliklə Səslər səhifəsinə yazıb IVR, növbə və zaman şərtlərində istifadə edə bilərsiniz. Studiya yazısına ehtiyac qalmır, bütün anonslar eyni səslə olur.

  • Provayderlər: Google Cloud Text-to-Speech (API açarı və ya xidmət hesabı), Amazon Polly, Microsoft Azure AI Speech, ElevenLabs və OpenAI. Səslər hər provayderdən canlı siyahılanır.
  • Anons kimi yadda saxlama: səs 8 kHz mono WAV-a çevrilib xüsusi səslər qovluğuna yazılır və yüklənmiş fayl kimi Tətbiq et ilə işə düşür.
  • Təhlükəsiz açarlar: giriş məlumatları verilənlər bazasından kənardakı açarla (libsodium) şifrələnir və brauzerə heç vaxt geri göndərilmir.
  • İstifadə tarixçəsi: xidmətlər simvol başına ödənişli olduğu üçün hər səsləndirmənin simvol sayı, müddəti və onu edən şəxs saxlanılır.
  • AiPBX-in tam türkcə sistem anonsları da bu funksiya ilə vahid səslə hazırlanıb.
Bu Səhifədə (20 Modul)