Intégration 3CX — Microsoft Teams
L'intégration 3CX + Microsoft Teams permet à vos utilisateurs Teams de passer et recevoir des appels téléphoniques externes via votre trunk SIP WebTic, sans quitter l'interface Teams.
Deux modes d'intégration
Mode 1 — Direct Routing (Microsoft Phone System)
3CX agit comme SBC (Session Border Controller) certifié entre Teams et votre trunk SIP :
- Prérequis : Licence Microsoft 365 avec Phone System add-on
- Prérequis : Licence 3CX V18+ (plan Professional ou Enterprise)
- Avantage : Appels PSTN directement depuis Teams (téléphone externe)
- Coût : Licence Phone System Microsoft (~8€/utilisateur/mois)
Mode 2 — Intégration Présence/Chat (sans Phone System)
Synchronisation de la présence 3CX ↔ Teams et click-to-call depuis Teams :
- Pas de licence Phone System requise
- Voir la disponibilité des collègues entre les deux systèmes
- Cliquer sur un contact Teams pour lancer un appel via 3CX
Configuration Direct Routing (étapes clés)
- Dans le portail Microsoft 365 Admin :
- Activer Phone System sur les licences utilisateurs
- Créer un domaine SBC :
sbc.votre-domaine.com
- Enregistrer le SBC via PowerShell Teams :
New-CsOnlinePSTNGateway -Identity sbc.votre-domaine.com -SipSignalingPort 5067
- Dans la console 3CX :
- Paramètres → Intégrations → Microsoft Teams
- Saisir le tenant ID Microsoft 365
- Générer et uploader le certificat TLS pour le SBC
- Configurer le trunk SIP WebTic en sortie pour Teams
- Affecter les numéros :
- Assigner un numéro DID WebTic à chaque utilisateur Teams
- Configurer le Voice Routing Policy dans Teams Admin Center
Prérequis réseau
- Port 5067 TCP/TLS ouvert (SIP Direct Routing)
- Ports 49152-53247 UDP (RTP media Teams)
- Certificat SSL valide sur le nom du SBC (Let's Encrypt compatible)
- IP publique fixe ou FQDN résolvable pour le SBC 3CX
Vérification de l'intégration
# Tester la connectivité SBC depuis Teams
Test-CsOnlineLisCivicAddress
Get-CsOnlinePSTNGateway | Select Identity, Enabled, SipSignalingPort
# Vérifier les logs 3CX
tail -f /var/log/3cxpbx/callcontrol*.log | grep -i teams