💼 Microsoft Teams Entegrasyonu & Direct Routing SBC Gateway 💼 Microsoft Teams Direct Routing & SBC Gateway Integration 💼 Microsoft Teams Direct Routing & SBC-Gateway-Integration
AiPBX Asterisk 22 motorunu doğrudan Microsoft 365 Teams Phone System bulutuna bağlayın. Mevcut Türk Telekom veya operatör SIP trunk hatlarınızı değiştirmeden, fahiş Microsoft arama tarifelerine katlanmadan, Teams kullanıcılarını kurum içi dahili santral sisteminizle uçtan uca birleştirin.
Bridge your AiPBX Asterisk 22 telephony infrastructure with Microsoft 365 Teams Phone System. Retain existing local SIP carrier trunks without paying expensive Microsoft Calling Plan fees, seamlessly integrating Teams desktop/mobile clients with internal extensions and call queues.
Verbinden Sie Ihre AiPBX Asterisk 22-Infrastruktur direkt mit dem Microsoft 365 Teams Phone System. Behalten Sie bestehende lokale SIP-Trunks ohne teure Microsoft Calling Plans und integrieren Sie Teams-Clients nahtlos in Nebenstellen und Warteschlangen.
1. Genel Bakış & Neden Direct Routing? 1. Overview & Why Direct Routing? 1. Übersicht & Warum Direct Routing?
Microsoft Teams, günümüz kurumsal dünyasında en yaygın kullanılan iş birliği aracıdır. Ancak kurumsal telefon görüşmeleri söz konusu olduğunda Microsoft'un sunduğu yerel arama paketleri (Calling Plans) hem son derece maliyetlidir hem de Türkiye ve pek çok ülkede yerel numara taşıma ve regülasyon engellerine takılmaktadır.
AiPBX Direct Routing Gateway çözümü ile AiPBX, Microsoft Teams Phone System için bir Session Border Controller (SBC) görevi üstlenir. Bu sayede:
- Operatör Özgürlüğü: Mevcut Türk Telekom, Vodafone, Turkcell Superonline veya alternatif SIP trunk sağlayıcılarınızı olduğu gibi kullanmaya devam edersiniz.
- %70'e Varan Maliyet Tasarrufu: Microsoft'un kullanıcı başı aylık yüksek uluslararası/yerel arama paketleri yerine, mevcut yerel operatör tarifenizden faydalanırsınız.
- Hibrit İletişim: Microsoft Teams kullanan beyaz yaka çalışanlar ile sahadaki Android/iOS AiPBX softphone kullananlar, fabrika/depodaki analog dahili telefonlar ve masaüstü IP telefonlar arasında ücretsiz 3-4 haneli dahili arama gerçekleşir.
- Gelişmiş Santral Yetenekleri: Teams istemcileri AiPBX'in çok seviyeli IVR sesli yanıt sistemine, çağrı merkezi ACD kuyruklarına (*22/*23 mola kodları dahil), ses kayıt arşivine ve T.38 dijital faks sunucusuna entegre olur.
While Microsoft Teams dominates enterprise collaboration, Microsoft's native Calling Plans are notoriously expensive and face severe regulatory and porting restrictions across many regions.
AiPBX Direct Routing Gateway acts as a certified-compatible Session Border Controller (SBC) between Microsoft 365 Phone System and your local telecommunications trunks. Key advantages:
- Carrier Freedom: Retain existing SIP trunks and competitive local telco contracts without vendor lock-in.
- Up to 70% Cost Reduction: Eliminate per-user monthly Microsoft Calling Plan fees.
- Hybrid Intercom: Seamless 3 or 4-digit extension-to-extension dialing between Teams users, physical desk phones, WebRTC browser softphones, and native mobile clients.
- Enterprise PBX Features: Teams users connect directly to AiPBX multi-level IVRs, ACD call center queues (with *22/*23 break codes), encrypted call recording, and T.38 digital faxing.
Microsoft Teams ist die führende Kollaborationsplattform, aber Microsoft Calling Plans sind teuer und in vielen Ländern stark reglementiert.
Mit dem AiPBX Direct Routing Gateway fungiert AiPBX als Session Border Controller (SBC) zwischen Microsoft 365 und Ihren lokalen Telekommunikationstrunks.
- Freie Anbieterwahl: Behalten Sie bestehende SIP-Trunk-Verträge zu gewohnt günstigen Konditionen.
- Bis zu 70% Kostensenkung: Keine teuren monatlichen Microsoft-Calling-Plan-Gebühren pro Benutzer.
- Hybride Nebenstellen: Kostenlose interne Kurzwahlen zwischen Teams-Nutzern, Tischtelefonen, WebRTC und Mobil-Apps.
- Vollwertige PBX-Funktionen: IVR-Sprachmenüs, ACD-Warteschlangen, Gesprächsaufzeichnung und digitaler Faxserver.
| Karşılaştırma KriteriFeature MatrixFunktionsmatrix | Microsoft Yerel Calling PlanMicrosoft Native Calling PlanMicrosoft Native Calling Plan | AiPBX Direct Routing (Önerilen)AiPBX Direct Routing (Recommended)AiPBX Direct Routing (Empfohlen) |
|---|---|---|
| Aylık Operatör MaliyetiMonthly Telecom CostMonatliche Telekom-Kosten | Kullanıcı başı 12$ - 24$ / ay$12 - $24 per user / month12€ - 24€ pro Benutzer / Monat | 0$ Ek Ücret (Mevcut SIP trunk tarifesi)$0 Extra (Uses existing SIP trunk rates)0€ Extra (Nutzt bestehende SIP-Tarife) |
| Dahili Telefon & IP Phone DesteğiDesk Phone & IntercomTischtelefone & Gegensprechanlage | Yalnızca pahalı Teams sertifikalı IP telefonlarOnly expensive Teams-certified phonesNur teure Teams-zertifizierte Telefone | Tüm standart SIP telefonlar (Yealink, Grandstream, Fanvil vb.) + WebRTCAll standard SIP hardware (Yealink, Grandstream, etc.) + WebRTCAlle Standard-SIP-Telefone + WebRTC |
| Çağrı Merkezi & Mola TakibiCall Center & Agent BreaksCallcenter & Pausenerfassung | Basit kuyruk, mola kodları ve detaylı raporlama yokBasic queues, no granular break codesEinfache Warteschlangen, keine Pausencodes | Tam teşekküllü ACD, *22/*23 mola kodları, SLA wallboard & *90 dinlemeFull ACD queues, *22/*23 break codes, live wallboard & *90 spyVollwertiges ACD, *22/*23 Pausencodes, Live-Wallboard & *90 Mithören |
| Gelen & Giden Faks (T.38)Inbound/Outbound Fax (T.38)Faxempfang/-versand (T.38) | DesteklenmiyorNot supportedNicht unterstützt | T.38 ve SpanDSP destekli dahili faks sunucusuFull T.38 & SpanDSP digital fax serverIntegrierter T.38 & SpanDSP Faxserver |
2. Mimari Şema & Çalışma Prensibi 2. Architecture & Topology 2. Architektur & Topologie
Microsoft Teams Direct Routing sinyalleşmesi SIP over TLS (Port 5061) üzerinden, ses akışları ise SRTP (Secure Real-time Transport Protocol - SDES) üzerinden şifreli olarak taşınır. AiPBX sunucusu, Microsoft'un bulut proxy'leri ile yerel ağınız arasında güvenli bir köprü (SBC) oluşturur:
Microsoft Teams Direct Routing mandates SIP over TLS (Port 5061) for signaling and SRTP (SDES encryption) for audio streams. AiPBX operates as a secure SBC edge gateway interfacing between Microsoft 365 cloud proxies and your enterprise infrastructure:
Microsoft Teams Direct Routing erfordert SIP über TLS (Port 5061) für die Signalisierung und SRTP (SDES-Verschlüsselung) für Audio. AiPBX fungiert als sicherer SBC-Edge-Knoten:
┌─────────────────────────────────────────────────────────────────────────────┐
│ MICROSOFT 365 CLOUD INFRASTRUCTURE │
│ │
│ [ Teams Desktop ] [ Teams Mobile (iOS/Android) ] [ Teams Web ] │
│ │ │ │ │
│ └───────────────────────┬───────┴────────────────────────┘ │
│ ▼ │
│ Microsoft Teams Phone System Core │
│ │ │
│ sip.pstnhub.microsoft.com (EU / Primary) │
│ sip2.pstnhub.microsoft.com (US / Secondary) │
│ sip3.pstnhub.microsoft.com (APAC / Tertiary) │
└───────────────────────────────────┬─────────────────────────────────────────┘
│
│ SIP over TLS (Port 5061)
│ SRTP Media (UDP 10000-20000)
│ Trusted CA SSL (Let's Encrypt / DigiCert)
▼
┌─────────────────────────────────────────────────────────────────────────────┐
│ AiPBX SESSION BORDER CONTROLLER (SBC) │
│ │
│ FQDN: sbc.yourdomain.com / IP: 212.147.x.x │
│ ┌─────────────────────────────────────────────────────────────────────┐ │
│ │ Asterisk 22 PJSIP Signaling & Media Engine │ │
│ │ • TLS Transport (Port 5061) - Strict Cipher Suites (AES256/GCM) │ │
│ │ • SDES-SRTP Audio Transcoding (SILK, Opus, G.711a, G.711u) │ │
│ │ • Bi-directional SIP OPTIONS Heartbeat Monitoring (60s Keepalive) │ │
│ │ • E.164 Inbound/Outbound Route Normalization & Dialplan │ │
│ └──────────────────────────────────┬──────────────────────────────────┘ │
└──────────────────────────────────────┼──────────────────────────────────────┘
│
┌───────────────────────────┼───────────────────────────┐
▼ ▼ ▼
┌─────────────────────┐ ┌─────────────────────┐ ┌─────────────────────┐
│ KURUMSAL DAHİLİLER │ │ ÇAĞRI MERKEZİ & IVR │ │ TELEKOM TRUNK'LAR │
│ • Yealink/Fanvil │ │ • ACD Kuyrukları │ │ • Türk Telekom │
│ • AiPBX WebRTC Web │ │ • *22/*23 Mola Takip│ │ • Turkcell / Voda │
│ • Android/iOS Apps │ │ • Ses Kayıt & SLA │ │ • Alternatif SIP │
└─────────────────────┘ └─────────────────────┘ └─────────────────────┘
SIP OPTIONS paketi gönderir. AiPBX PJSIP yapılandırmasında qualify_frequency=60 aktif edildiğinde, Microsoft 365 Yönetim Merkezi'nde SBC durumu anında "Active (Etkin)" olarak yeşile döner.
Microsoft Teams and AiPBX exchange periodic SIP OPTIONS pings every 60 seconds to evaluate trunk reachability. When configured with qualify_frequency=60 in Asterisk PJSIP, the SBC status turns "Active" in the Teams Admin Center.
Microsoft Teams und AiPBX senden alle 60 Sekunden SIP OPTIONS-Pings. Mit qualify_frequency=60 in Asterisk PJSIP wechselt der Status im Teams Admin Center auf "Aktiv".
3. Ön Koşullar & Lisans Gereksinimleri 3. Prerequisites & Licensing 3. Voraussetzungen & Lizenzen
AiPBX Microsoft Teams Direct Routing kurulumunu gerçekleştirmeden önce aşağıdaki bileşenlerin hazır olduğundan emin olun:
- Microsoft 365 Lisansı: Arama yapacak her Teams kullanıcısı için Teams Phone Standard (eski adıyla Phone System) eklenti lisansı veya bu özelliği içeren Microsoft 365 E5 lisansı gereklidir.
- Onaylı Alan Adı (FQDN): Microsoft 365 Tenant'ınızda doğrulanmış bir alan adı altında SBC için özel bir alt alan adı (örneğin
sbc.sirketiniz.comveyateams.sirketiniz.com). Not: Alan adı Microsoft 365 yönetim panelinde "Etki Alanları (Domains)" listesinde bulunmalıdır. - Güvenilir Genel SSL Sertifikası: Microsoft Teams doğrudan kendi güven zincirinde bulunan genel CA'leri (Sectigo, DigiCert, GlobalSign veya Let's Encrypt ISRG Root X1) kabul eder. Sertifikanın Ortak Adı (CN) veya SAN kaydı SBC FQDN'inizle birebir eşleşmelidir.
- Statik Genel IPv4 Adresi: AiPBX sunucunuzun internete doğrudan açık veya 1:1 NAT ile eşlenmiş sabit bir genel IP adresi bulunmalıdır.
Ensure the following prerequisites are met prior to configuring AiPBX Direct Routing:
- Microsoft 365 Licenses: A Teams Phone Standard add-on license or an encompassing Microsoft 365 E5 license for each user requiring external calling.
- Verified FQDN: A dedicated subdomain (e.g.
sbc.yourcompany.com) matching a custom domain verified in your Microsoft 365 tenant. - Trusted Public SSL Certificate: Issued by an officially recognized Certificate Authority (DigiCert, Sectigo, GlobalSign, or Let's Encrypt ISRG Root X1). The CN/SAN must match your SBC FQDN.
- Static Public IPv4: A persistent static public IP assigned directly or via 1:1 NAT to your AiPBX host.
Folgende Voraussetzungen müssen erfüllt sein:
- Microsoft 365 Lizenzen: Teams Phone Standard Zusatzlizenz oder Microsoft 365 E5 für jeden telefonierenden Benutzer.
- Verifizierter FQDN: Eine Subdomain (z.B.
sbc.ihrefirma.de) unter einer im M365-Tenant verifizierten Domain. - Öffentliches SSL-Zertifikat: Ausgestellt von einer vertrauenswürdigen Zertifizierungsstelle (DigiCert, Sectigo oder Let's Encrypt).
- Statische öffentliche IPv4-Adresse: Feste öffentliche IP-Adresse für AiPBX.
4. Ağ & Güvenlik Duvarı Port Kuralları 4. Network & Firewall Rules 4. Netzwerk- & Firewall-Regeln
Microsoft Teams Direct Routing sinyalleşme ve ses trafiği için AiPBX sunucunuzda aşağıdaki güvenlik duvarı (UFW) kurallarının açık olması gerekir:
Configure your firewall to allow bi-directional traffic between your AiPBX SBC and Microsoft 365 Direct Routing endpoints:
Öffnen Sie folgende Firewall-Ports für den Datenverkehr zwischen AiPBX und Microsoft 365:
| Protokol & PortProtocol & PortProtokoll & Port | Kaynak / Hedef IP AralığıSource / DestinationQuelle / Ziel | Trafik Tipi & AçıklamaTraffic Type & PurposeVerkehrstyp & Zweck |
|---|---|---|
TCP 5061 |
52.114.0.0/16, 52.112.0.0/14 |
SIP over TLS Sinyalleşmesi: Microsoft PSTN Hub proxy'leri ile iki yönlü SIP çağrı kurulumu ve OPTIONS nabız kontrolleri.SIP over TLS Signaling: Bi-directional call setup and OPTIONS keep-alive with MS PSTN Hub.SIP über TLS: Signalisierung und OPTIONS-Keepalive mit MS PSTN Hub. |
UDP 10000:20000 |
52.112.0.0/14, 52.120.0.0/14 |
SRTP Güvenli Ses Akışı: Teams kullanıcıları ile AiPBX arasındaki şifreli medya paketleri.SRTP Media Streams: Encrypted voice payload exchange between Teams clients and PBX.SRTP-Audioströme: Verschlüsselte Sprachpakete zwischen Teams und PBX. |
TCP 443 |
Genel / Any | HTTPS Webhook & Let's Encrypt: Sertifika yenileme ve Teams kanallarına giden Adaptive Card bildirimleri.HTTPS Webhook & SSL: Automated Certbot renewal and outbound Teams channel webhooks.HTTPS-Webhooks & SSL: Certbot-Erneuerung und ausgehende Teams-Webhooks. |
# 1. Microsoft Teams SIP TLS (Port 5061) - Microsoft Subnetleri
sudo ufw allow proto tcp from 52.114.0.0/16 to any port 5061 comment 'MS Teams SIP TLS Primary'
sudo ufw allow proto tcp from 52.112.0.0/14 to any port 5061 comment 'MS Teams SIP TLS Secondary'
# 2. Microsoft Teams SRTP Ses Medyası (UDP 10000-20000)
sudo ufw allow proto udp from 52.112.0.0/14 to any port 10000:20000 comment 'MS Teams SRTP Media'
sudo ufw allow proto udp from 52.120.0.0/14 to any port 10000:20000 comment 'MS Teams Media Relays'
# 3. Güvenlik duvarını yeniden yükle ve durumu incele
sudo ufw reload
sudo ufw status numbered
5. Asterisk 22 & PJSIP Yapılandırması 5. Asterisk 22 & PJSIP Configuration 5. Asterisk 22 & PJSIP Konfiguration
Asterisk 22 PJSIP motoru, Microsoft Teams Direct Routing'in talep ettiği TLS 1.2+ şifreleme, SDES-SRTP medya koruması ve E.164 numara formatlarını yerel olarak destekler. Aşağıdaki konfigürasyon bloklarını /etc/asterisk/pjsip.conf ve /etc/asterisk/extensions.conf dosyalarına ekleyin:
Asterisk 22 PJSIP natively satisfies Microsoft's strict Direct Routing requirements including TLS 1.2+ mutual authentication, SDES-SRTP media encryption, and E.164 normalization. Add the following snippets to your Asterisk configuration:
Asterisk 22 PJSIP erfüllt alle Vorgaben für Microsoft Teams Direct Routing (TLS 1.2+, SDES-SRTP und E.164). Fügen Sie folgende Abschnitte zu Ihrer Konfiguration hinzu:
A. /etc/asterisk/pjsip.conf — Trunk & Transport Ayarları
A. /etc/asterisk/pjsip.conf — Trunk & Transport Setup
A. /etc/asterisk/pjsip.conf — Trunk & Transport-Setup
; ====================================================================
; 1. TLS TRANSPORT TANIMI (PORT 5061 - Microsoft Teams SBC)
; ====================================================================
[transport-tls-msteams]
type=transport
protocol=tls
bind=0.0.0.0:5061
cert_file=/etc/letsencrypt/live/sbc.yourdomain.com/fullchain.pem
priv_key_file=/etc/letsencrypt/live/sbc.yourdomain.com/privkey.pem
method=tlsv1_2
cipher=ECDHE-RSA-AES256-GCM-SHA384,ECDHE-RSA-AES128-GCM-SHA256,ECDHE-RSA-AES256-SHA384
verify_client=no
verify_server=yes
require_client_cert=no
; ====================================================================
; 2. MS TEAMS ENDPOINT TANIMI
; ====================================================================
[msteams-trunk]
type=endpoint
transport=transport-tls-msteams
context=from-msteams
disallow=all
allow=alaw,ulaw,opus,g722
direct_media=no
media_encryption=sdes
rtp_symmetric=yes
force_rport=yes
rewrite_contact=yes
trust_id_inbound=yes
send_rpid=yes
send_pai=yes
timers=yes
timers_sess_expires=1800
aors=msteams-aor
; ====================================================================
; 3. MS TEAMS AOR & QUALIFY (OPTIONS Nabız Kontrolü)
; ====================================================================
[msteams-aor]
type=aor
contact=sip:sip.pstnhub.microsoft.com:5061;transport=tls
qualify_frequency=60
qualify_timeout=3.0
; ====================================================================
; 4. IDENTIFY (Gelen Çağrıyı Microsoft IP'leriyle Eşleştirme)
; ====================================================================
[msteams-identify]
type=identify
endpoint=msteams-trunk
match=52.114.148.0, 52.114.132.74, 52.114.75.24, 52.114.76.76, 52.114.7.24, 52.114.14.70, 52.114.16.74, 52.114.20.29, sip.pstnhub.microsoft.com, sip2.pstnhub.microsoft.com, sip3.pstnhub.microsoft.com
B. /etc/asterisk/extensions.conf — Çağrı Yönlendirme (Dialplan)
B. /etc/asterisk/extensions.conf — Dialplan Routing
B. /etc/asterisk/extensions.conf — Wählplan-Routing
; ====================================================================
; 1. MICROSOFT TEAMS'TEN GELEN ÇAĞRILAR (from-msteams)
; ====================================================================
[from-msteams]
; Teams kullanıcısı 3-4 haneli bir dahili çevirdiğinde (Örn: 105)
exten => _[1-9]XX,1,NoOp(Teams -> Dahili Arama: ${CALLERID(num)} -> ${EXTEN})
same => n,Dial(PJSIP/${EXTEN},30,tTkK)
same => n,Hangup()
exten => _[1-9]XXX,1,NoOp(Teams -> 4 Haneli Dahili: ${CALLERID(num)} -> ${EXTEN})
same => n,Dial(PJSIP/${EXTEN},30,tTkK)
same => n,Hangup()
; Teams kullanıcısı Çağrı Merkezi Kuyruğunu aradığında (Örn: 800)
exten => 800,1,NoOp(Teams -> Destek Kuyrugu)
same => n,Answer()
same => n,Queue(destek_kuyrugu,tTkK,,,180)
same => n,Hangup()
; Teams kullanıcısı PSTN dış hat aradığında (05xx / 02xx / +90...)
exten => _0[2-5]XXXXXXXXX,1,NoOp(Teams -> Telekom Trunk Dis Arama: ${EXTEN})
same => n,Dial(PJSIP/${EXTEN}@turktelekom-trunk,60,tTkK)
same => n,Hangup()
; ====================================================================
; 2. AİPBX DAHİLİLERİNDEN TEAMS'E ÇAĞRI GÖNDERME (to-msteams)
; Teams kullanıcılarına tanımlanan E.164 numaralarına rota açılır (+90212XXXXXXX)
; ====================================================================
[to-msteams]
exten => _+.,1,NoOp(AiPBX -> Teams Direct Routing: ${EXTEN})
same => n,Set(CALLERID(num)=+902129990000) ; Şirket ana numaranız
same => n,Dial(PJSIP/${EXTEN}@msteams-trunk,60,tTkK)
same => n,Hangup()
; Kısa kod ile Teams kullanıcısını arama (Örn: 7105 -> +902129997105)
exten => _7XXX,1,NoOp(Dahili -> Teams Kullanicisi 7${EXTEN:1})
same => n,Dial(PJSIP/+90212999${EXTEN}@msteams-trunk,45,tTkK)
same => n,Hangup()
# Asterisk modüllerini canlı olarak yeniden yükleyin
sudo asterisk -rx "pjsip reload"
sudo asterisk -rx "dialplan reload"
# Teams Trunk durumunu ve OPTIONS nabzını teyit edin
sudo asterisk -rx "pjsip show endpoints"
sudo asterisk -rx "pjsip show aor msteams-aor"
6. Microsoft 365 PowerShell Yapılandırması 6. Microsoft 365 PowerShell Setup 6. Microsoft 365 PowerShell Konfiguration
Microsoft Teams Direct Routing kurulumunun Microsoft bulut tarafı resmi MicrosoftTeams PowerShell modülü üzerinden birkaç komutla tamamlanır. Yönetici (Global Admin veya Teams Admin) yetkisine sahip bir bilgisayarda aşağıdaki adımları sırasıyla uygulayın:
Configuring Microsoft 365 Direct Routing is completed via the official MicrosoftTeams PowerShell module. Execute the following sequence with Teams Administrator privileges:
Die Konfiguration in Microsoft 365 erfolgt über das offizielle MicrosoftTeams PowerShell-Modul mit Administratorrechten:
# ====================================================================
# ADIM 1: Modülü Kurun ve Microsoft 365 Tenant'a Bağlanın
# ====================================================================
Install-Module -Name MicrosoftTeams -Force -AllowClobber
Connect-MicrosoftTeams
# ====================================================================
# ADIM 2: AiPBX SBC Gateway'i Sisteme Tanıtın
# ====================================================================
New-CsOnlinePSTNGateway `
-Fqdn "sbc.yourdomain.com" `
-SipSignalingPort 5061 `
-CodecPriorityList SILK,G711A,G711U `
-MaxConcurrentSessions 100 `
-Enabled $true
# ====================================================================
# ADIM 3: PSTN Kullanımını ve Ses Rotalarını (Voice Route) Oluşturun
# ====================================================================
# PSTN Usage etiketi tanımlayın
Set-CsOnlinePstnUsage -Identity Global -Usage @{Add="AiPBX-Local"}
# Tüm giden çağrıları AiPBX SBC'ye yönlendiren ses rotası
New-CsOnlineVoiceRoute `
-Name "AiPBX-PSTN-Route" `
-NumberPattern ".*" `
-OnlinePstnGatewayList "sbc.yourdomain.com" `
-Priority 1 `
-OnlinePstnUsages "AiPBX-Local"
# Voice Routing Policy (Ses Yönlendirme İlkesi) oluşturun
New-CsOnlineVoiceRoutingPolicy `
-Identity "AiPBX-Voice-Policy" `
-OnlinePstnUsages "AiPBX-Local" `
-Description "AiPBX Direct Routing Santral İlkesi"
# ====================================================================
# ADIM 4: Kullanıcıya Numara Atayın ve İlkeyi Uygulayın
# ====================================================================
# Kullanıcıya E.164 telefon numarası tanımlayın ve Enterprise Voice açın
Set-CsPhoneNumberAssignment `
-Identity "[email protected]" `
-PhoneNumber "+902129991001" `
-PhoneNumberType DirectRouting
# Kullanıcıya AiPBX ses politikasını bağlayın
Grant-CsOnlineVoiceRoutingPolicy `
-Identity "[email protected]" `
-PolicyName "AiPBX-Voice-Policy"
7. Çağrı Senaryoları & Kurumsal İş Akışları 7. Call Flows & Enterprise Scenarios 7. Anrufszenarien & Enterprise-Workflows
AiPBX ve Microsoft Teams entegrasyonu tamamlandığında işletmeniz hibrit bir santral yapısına kavuşur. Sistem aşağıdaki senaryoları tam uyumla destekler:
Once deployed, AiPBX delivers seamless hybrid routing scenarios between legacy telephony and Teams cloud:
Nach der Bereitstellung unterstützt AiPBX nahtlose hybride Telefonieszenarien:
1. Teams ➔ Masa Telefonu / Dahili
Teams kullanıcısı arama ekranında 105 tuşladığında çağrı TLS 5061 üzerinden AiPBX'e ulaşır. Asterisk dahiliyi masaüstü IP telefonda ve mobil uygulamada anında çaldırır.
Dialing 105 in Teams routes via TLS 5061 to AiPBX, ringing the physical IP phone and native mobile client simultaneously.
Die Wahl von 105 in Teams leitet den Anruf über TLS 5061 an AiPBX weiter und klingelt Tischtelefon und Mobile-App gleichzeitig.
2. PSTN Dış Hat ➔ IVR ➔ Teams
Müşteri Türk Telekom numaranızı arar. AiPBX IVR menüsü açılır ("Satış için 1'e basın"). Tuşlama yapıldığında çağrı doğrudan ilgili Teams kullanıcısına düşer.
Inbound caller dials your company number, hears the AiPBX IVR menu, presses 1, and is forwarded directly to the sales rep on Microsoft Teams.
Anrufer wählt die Firmennummer, hört das IVR-Menü und wird direkt zum Mitarbeiter in Microsoft Teams weitergeleitet.
3. Teams ➔ Dış Dünya (PSTN Arama)
Teams kullanıcısı bir cep telefonu numarasını tuşladığında çağrı AiPBX üzerinden şirketin mevcut SIP trunk operatörüne yönlendirilir ve yerel tarifeden faturalandırılır.
Teams user dials a mobile number; the call exits via AiPBX through your existing telco SIP trunk at local corporate rates.
Teams-Benutzer ruft eine Mobilnummer an; der Anruf wird über den bestehenden Firmentrunk zu lokalen Tarifen geroutet.
4. Teams Kullanıcısı Çağrı Kuyruğunda
Destek ekibindeki Teams kullanıcıları AiPBX ACD kuyruklarına dinamik üye olarak eklenebilir. Gelen müşteri çağrıları sırayla Teams ekranlarına pop-up olarak düşer.
Teams agents can join AiPBX ACD queues dynamically, receiving distributed customer calls with full supervisor monitoring.
Teams-Benutzer können als Agenten in AiPBX-Kuyruklar aufgenommen werden und Kundenanrufe mit Supervisor-Unterstützung empfangen.
8. Microsoft Teams Webhook & Kanal Bildirimleri 8. Teams Webhooks & Channel Notifications 8. Teams-Webhooks & Kanal-Benachrichtigungen
Direct Routing ses entegrasyonuna ek olarak AiPBX; kaçan çağrılar, santral güvenlik uyarıları, gelen faks belgeleri ve çağrı merkezi SLA aşım bildirimlerini Microsoft Teams kanallarına Adaptive Cards biçiminde anlık webhook ile gönderebilir.
Beyond voice routing, AiPBX dispatches rich Adaptive Cards to Microsoft Teams channels via incoming webhooks for missed calls, new faxes, and SLA breach alerts:
Zusätzlich zum Voice-Routing sendet AiPBX formatierte Adaptive Cards über Webhooks in Microsoft Teams-Kanäle:
curl -X POST -H "Content-Type: application/json" -d '{
"type": "message",
"attachments": [
{
"contentType": "application/vnd.microsoft.card.adaptive",
"content": {
"$schema": "http://adaptivecards.io/schemas/adaptive-card.json",
"type": "AdaptiveCard",
"version": "1.4",
"body": [
{
"type": "TextBlock",
"text": "📞 AiPBX — Kaçan Çağrı Bildirimi",
"weight": "Bolder",
"size": "Medium",
"color": "Attention"
},
{
"type": "FactSet",
"facts": [
{ "title": "Arayan:", "value": "+90 532 123 45 67" },
{ "title": "Hedef Kuyruk:", "value": "Destek Kuyrugu (*800)" },
{ "title": "Bekleme Süresi:", "value": "48 saniye" },
{ "title": "Zaman:", "value": "2026-09-18 11:42:15" }
]
}
],
"actions": [
{
"type": "Action.OpenUrl",
"title": "Santralde İncele",
"url": "https://aipbx.bid/cdr-reports"
}
]
}
}
]
}' "https://yourtenant.webhook.office.com/webhookb2/..."
9. Sorun Giderme & Tanı Komutları 9. Troubleshooting & Diagnostics 9. Fehlerbehebung & Diagnose
Direct Routing kurulumunda en sık karşılaşılan sorunlar ve çözüm adımları:
Common issues encountered during Direct Routing configuration and their remedies:
Häufige Probleme bei der Direct Routing-Einrichtung und deren Behebung:
| Hata / BelirtiSymptom / ErrorFehler / Symptom | Olası NedenProbable Root CauseUrsache | Çözüm YoluResolutionLösung |
|---|---|---|
| SIP OPTIONS Yanıtsız / SBC Down | Port 5061 güvenlik duvarında kapalı veya TLS sertifika adı uyuşmuyor.Port 5061 blocked or FQDN does not match SSL CN/SAN.Port 5061 blockiert oder SSL-Zertifikatsname stimmt nicht überein. | ufw status ile 5061 portunu kontrol edin. Let's Encrypt sertifikasında FQDN'in doğru olduğunu certbot certificates ile teyit edin.Check UFW rules and ensure Certbot certificate matches SBC FQDN.UFW-Regeln prüfen und FQDN im SSL-Zertifikat validieren. |
| 488 Not Acceptable Here | Codec veya SRTP medya şifreleme uyuşmazlığı.Codec mismatch or missing SRTP encryption.Codec-Konflikt oder fehlende SRTP-Verschlüsselung. | PJSIP endpoint ayarlarında media_encryption=sdes ve allow=alaw,ulaw,opus satırlarının varlığından emin olun.Verify media_encryption=sdes and G.711/Opus codecs in PJSIP config.media_encryption=sdes und G.711/Opus in PJSIP sicherstellen. |
| 403 Forbidden | Microsoft 365 Tenant'ta ses politikası atanmamış veya numara eksik.Voice policy or phone assignment missing in M365.Fehlende Voice Policy oder Rufnummernzuweisung in M365. | PowerShell üzerinden Get-CsOnlineUser [email protected] komutuyla EnterpriseVoiceEnabled: True olduğunu denetleyin.Check user status with Get-CsOnlineUser in PowerShell.Benutzerstatus mit Get-CsOnlineUser prüfen. |
| Tek Taraflı Ses (One-Way Audio) | UDP 10000:20000 portları güvenlik duvarında engelli veya NAT external_media_address eksik.UDP media ports blocked or NAT external_media_address unset.UDP-Mediaports blockiert oder NAT-Adresse fehlt. | PJSIP transport tanımına external_media_address=YOUR_PUBLIC_IP ekleyin ve UDP portlarını açın.Add external_media_address to PJSIP transport and verify UDP range.external_media_address in PJSIP definieren und UDP-Ports öffnen. |
# Asterisk konsoluna bağlanın ve PJSIP SIP paket dökümünü açın
sudo asterisk -rvvv
pjsip set logger on
# Yalnızca Microsoft Teams trafiğini filtrelemek için terminalde:
sudo tcpdump -n -i any port 5061 -vv