Configuration client SIP
Tout client SIP capable de passer un appel via un proxy peut utiliser un trunk Bird. Cela inclut les PBX, les softphones de bureau et les outils en ligne de commande. Cette page fait correspondre les détails de connexion du trunk aux champs courants des clients et aux paramètres d'authentification.
Ce dont un client a besoin
Quatre valeurs, toutes issues de la page du trunk :
| Champ du client | Valeur à saisir |
|---|---|
| Serveur SIP, domaine, hôte ou proxy | Le domaine SIP du trunk |
| Port et transport | Un des ports pris en charge du trunk |
| Utilisateur d'authentification, auth user ou login | bird |
| Mot de passe ou secret | Le secret d'une clé API autorisée sur le trunk |
Un trunk qui utilise uniquement sa liste d'adresses IP autorisées n'a besoin que des deux premiers. Les identifiants sont ce qu'ajoute l'authentification par clé API.
Les exemples utilisent YOUR_TRUNK_DOMAIN, YOUR_CALLER_ID et YOUR_API_KEY_SECRET. Copiez le domaine complet depuis la page du trunk. Bird refuse les appels vers un autre domaine avant qu'ils n'atteignent votre journal d'appels. Une fois connecté avec le Bird CLI, exécutez bird voice tools test-call --dry-run pour afficher ces valeurs sous forme de ligne de compte baresip.
Laissez realm ou domaine d'authentification vide pour que le client utilise le realm du challenge Bird. Si un client exige une valeur, utilisez l'identifiant de l'espace de travail sans son préfixe ws_, suivi de .sip.bird.com. Le realm de l'espace de travail diffère du domaine SIP du trunk.
Passer des appels sans enregistrement
Bird authentifie chaque INVITE par rapport à la liste d'adresses IP autorisées du trunk ou via un challenge par mot de passe. Les clients ne s'enregistrent pas auprès du trunk.
Vérifiez l'enregistrement avant de passer un appel :
- Dans un PBX, configurez Bird comme trunk et laissez l'enregistrement désactivé. Pour Asterisk, cela signifie aucune section
type=registration; pour FreeSWITCH,register=falsesur la gateway ; FreePBX et 3CX disposent d'un mode d'enregistrement à définir sur none. - Dans un softphone, désactivez l'enregistrement dans les paramètres avancés du compte si l'option est proposée. Si elle ne l'est pas, la tentative d'enregistrement échouée est cosmétique et la numérotation fonctionne quand même, car l'authentification porte sur l'
INVITEet non sur l'enregistrement.
Deux identités, deux champs
Votre client doit envoyer deux identités distinctes :
- L'identifiant de l'appelant figure dans l'en-tête
From. Utilisez un numéro Bird attribué à cet espace de travail et éligible aux appels sortants, ou un numéro externe que vous avez vérifié. Utilisez le format E.164 : un+initial suivi de l'indicatif pays et du numéro national. Dans la plupart des clients, il s'agit du champ utilisateur ou identifiant de l'appelant du compte. - Le nom d'utilisateur digest est toujours
bird. Dans la plupart des clients, il s'agit du champ utilisateur d'authentification ou login.
Composez également en E.164, car c'est sur cette base que Bird route et tarifie.
Softphones
Un softphone est le moyen le plus rapide de vérifier qu'un nouveau trunk fonctionne avant d'y diriger le trafic de production.
baresip
Ajoutez une ligne dans ~/.baresip/accounts, avec votre identifiant d'appelant comme utilisateur du compte et bird comme utilisateur d'authentification :
<sip:YOUR_CALLER_ID@YOUR_TRUNK_DOMAIN>;auth_user=bird;auth_pass=YOUR_API_KEY_SECRET;regint=0;outbound="sip:YOUR_TRUNK_DOMAIN;transport=udp"regint=0 empêche baresip de s'enregistrer. Lancez-le et composez avec /dial +31612345678.
Zoiper
Ajoutez un compte SIP manuellement. Définissez Domain sur le domaine SIP du trunk, Username sur votre identifiant d'appelant éligible, et Password sur le secret de la clé API. Dans les paramètres avancés, définissez Auth username sur bird, désactivez l'enregistrement au démarrage et choisissez le transport.
Linphone
Ajoutez un compte avec bird comme utilisateur d'authentification de l'identité SIP et votre identifiant d'appelant comme nom d'utilisateur, puis désactivez l'enregistrement sur le compte. Dans linphonerc, le même compte est une section [proxy_N] avec reg_sendregister=0.
MicroSIP
Sous Account : SIP server correspond au domaine SIP du trunk, Username à votre identifiant d'appelant éligible, Login à bird, Password au secret de la clé API. Laissez Domain identique au serveur SIP.
PBX
Asterisk
Dans pjsip.conf, un endpoint avec authentification sortante et sans section d'enregistrement :
[bird-auth]
type=auth
auth_type=userpass
username=bird
password=YOUR_API_KEY_SECRET
[bird-aor]
type=aor
contact=sip:YOUR_TRUNK_DOMAIN:5060
[bird]
type=endpoint
context=from-internal
outbound_auth=bird-auth
aors=bird-aor
from_user=YOUR_CALLER_ID
from_domain=YOUR_TRUNK_DOMAINfrom_user est l'identifiant d'appelant que Bird vérifie : utilisez donc un identifiant d'appelant éligible. Composez avec Dial(PJSIP/+31612345678@bird).
FreePBX
Sous Connectivity > Trunks, ajoutez un trunk SIP (chan_pjsip). Dans ses pjsip Settings, définissez Username sur bird, Secret sur le secret de la clé API, SIP Server sur le domaine SIP du trunk, Authentication sur outbound et Registration sur none. Définissez l'identifiant d'appelant sortant du trunk sur un numéro éligible.
FreeSWITCH
Une gateway dans conf/sip_profiles/external/bird.xml :
<include>
<gateway name="bird">
<param name="proxy" value="YOUR_TRUNK_DOMAIN"/>
<param name="register" value="false"/>
<param name="username" value="bird"/>
<param name="password" value="YOUR_API_KEY_SECRET"/>
<param name="from-domain" value="YOUR_TRUNK_DOMAIN"/>
<param name="caller-id-in-from" value="true"/>
</gateway>
</include>Avec caller-id-in-from défini, l'identifiant d'appelant sur le leg devient le numéro From : définissez-le sur un numéro éligible au moment de l'appel.
3CX
Ajoutez un trunk SIP générique et désactivez l'enregistrement. Définissez son hôte sur le domaine SIP du trunk, son identifiant d'authentification sur bird et son mot de passe sur le secret de la clé API. Définissez l'identifiant d'appelant sortant sur un numéro éligible.
Étapes suivantes
| Page | Contenu |
|---|---|
| Dépannage vocal | Diagnostiquer un appel qui n'aboutit pas, à partir du symptôme |
| Trunks SIP | Les détails de connexion, les listes d'autorisation et l'offre Digest |
| Passer des appels | Ce que Bird attend sur l'INVITE, et comment un appel est tarifé |
| Identifiants d'appelant | Enregistrer un numéro et prouver que vous en êtes propriétaire par un appel de vérification |
| Journal d'appels | Confirmer qu'un appel a été émis, et son coût |
Ressources associées
Poursuivez avec la documentation, les guides et les exemples sur ce sujet.