SIP - Fourche

Parfois, un serveur proxy transfère un seul appel SIP à plusieurs points de terminaison SIP. Ce processus est connu sous le nom de fourche. Ici, un seul appel peut faire sonner plusieurs terminaux en même temps.

Avec la fonction SIP forking, vous pouvez faire sonner votre téléphone de bureau en même temps que votre softphone ou un téléphone SIP sur votre mobile, ce qui vous permet de prendre facilement l'appel de l'un ou l'autre appareil.

Généralement, dans un bureau, supposons que le patron soit incapable de prendre l'appel ou absent, la fourche SIP permet au secrétaire de répondre aux appels de son poste.

Le fork sera possible s'il y a un proxy avec état disponible car il doit fonctionner et répondre parmi les nombreux qu'il reçoit.

Nous avons deux types de fourches -

  • Fourche parallèle
  • Fourche séquentielle

Fourche parallèle

Dans ce scénario, le serveur proxy va bifurquer l'INVITE vers, disons, deux périphériques (UA2, UA3) à la fois. Les deux appareils généreront 180 Ringing et quiconque recevra l'appel générera un 200 OK. La réponse (supposons UA2) qui atteint en premier l'expéditeur établira une session avec UA2. Pour l'autre réponse, un CANCEL sera déclenché.

Si l'expéditeur reçoit les deux réponses simultanément, alors basé sur la valeur q, il transmettra la réponse.

Fourche séquentielle

Dans ce scénario, le serveur proxy va bifurquer l'INVITE vers un périphérique (UA2). Si UA2 est indisponible ou occupé à ce moment-là, le proxy le redirigera vers un autre périphérique (UA3).

Branche - ID et étiquette

Les ID de branche aident les proxys à faire correspondre les réponses aux requêtes fourchues. Sans les ID de branche, un serveur proxy ne serait pas en mesure de comprendre la réponse fourchue. L'identifiant de branche sera disponible dans l'en-tête Via.

Les balises sont utilisées par l'UAC pour distinguer plusieurs réponses finales de différents UAS. Un UAS ne peut pas résoudre si la demande a été fourchue ou non. Par conséquent, il doit ajouter une balise.

Les mandataires peuvent également ajouter des balises si cela génère une réponse finale, ils n'insèrent jamais de balises dans les demandes ou les réponses qu'ils transmettent.

Il est possible qu'une seule demande puisse également être acheminée par plusieurs serveurs proxy. Ainsi, le proxy qui ferait une fourchette ajoutera ses propres identifiants uniques aux branches qu'il a créées.

Jambe d'appel et ID d'appel

Une étape d'appel fait référence à une relation de signalisation un à un entre deux agents utilisateurs. L'ID d'appel est un identifiant unique transporté dans le message SIP qui fait référence à l'appel. Un appel est une collection de segments d'appel.

Un UAC commence par envoyer une INVITE. En raison de la fourche, il peut recevoir plusieurs 200 OK de différents UA. Chacun correspond à une étape d'appel différente dans le même appel.

Un appel est donc un groupe de segments d'appel. Un tronçon d'appel fait référence à une connexion de bout en bout entre les UA.

Les espaces CSeq dans les deux directions d'un tronçon d'appel sont indépendants. Dans une seule direction, le numéro de séquence est incrémenté pour chaque transaction.

Messagerie vocale

La messagerie vocale est très courante de nos jours pour les utilisateurs d'entreprise. C'est une application téléphonique. Il vient à l'image lorsque l'appelé est indisponible ou incapable de recevoir l'appel, le PBX annoncera à l'appelant de laisser un message vocal.

L'agent utilisateur recevra une réponse 3xx ou sera redirigé vers le serveur de messagerie vocale si le numéro de l'appelé est inaccessible. Cependant, une sorte d'extension SIP est nécessaire pour indiquer au système de messagerie vocale la boîte vocale à utiliser, c'est-à-dire le message d'accueil à lire et l'emplacement de stockage du message enregistré. Il y a deux façons d'y parvenir -

  • En utilisant une extension de champ d'en-tête SIP

  • En utilisant Request-URI pour signaler ces informations

Supposons pour l'utilisateur sip:[email protected] a un système de messagerie vocale à sip: voicemail.tutorialspoint.com qui fournit la messagerie vocale, l'URI de demande de l'INVITE lorsqu'il est transmis au serveur de messagerie vocale pourrait ressembler à -

sip:voicemail.tutorialspoint.com;target = sip:[email protected];cause = 486

L'illustration suivante montre comment Request-URI porte l'identifiant de la boîte aux lettres et la raison (ici 486).