.titleBar { margin-bottom: 5px!important; }

iax2-Endlosschleife zwischen zwei Asterisk-Servern

Dieses Thema im Forum "Asterisk Skripte" wurde erstellt von metalhead, 1 März 2005.

  1. metalhead

    metalhead Neuer User

    Registriert seit:
    23 Feb. 2005
    Beiträge:
    2
    Zustimmungen:
    0
    Punkte für Erfolge:
    0
    Hallo zusammen,

    ich habe ein kleines Problemchen mit der Gesprächsvermittlung zwischen zwei Asterisk-Serven (mit einem Makro, desswegen in diesem Forum).
    Das Makro (extensions.conf) sieht so aus:
    Code:
    [macro-usualcall]
      exten => s,1,Dial(SIP/${ARG1},${RINGTIMEOUT},t)
      exten => s,2,Dial(IAX2/bitbone/${ARG1})
      exten => s,3,Hangup
    
    Er soll also einen Anruf erst versuchen bei sich zu vermitteln, schlägt dies fehl, mittels iax2 auf den 2. Server weiterreichen.
    Das Problem dabei ist, daß der 2. Server genau das gleiche macht, und wenn der Angerufene nicht registriert ist, leitet der 2. Server den Anruf wieder an den 1. zurück. Dieser leitet dann wieder an den 2. weiter usw...
    Das ist dann doch etwas zu viel Traffic für meinen Geschmack. 8)

    Wie verhindert man sowas?
    Es sollen aber alle Benutzer von überall aus erreichbar sein (egal an welchem Server sie angemeldet sind).

    Wäre nett wenn mir jemand einen Tipp geben könnte!
    Für eure Bemühungen im Voraus besten Dank!

    Gruß
    Metalhead
     
  2. Fux

    Fux Mitglied

    Registriert seit:
    3 Juni 2004
    Beiträge:
    420
    Zustimmungen:
    0
    Punkte für Erfolge:
    16
    Indem du dafür sorgst, daß der Call des jeweils anderen Servers nicht in demselben context wie oben landet, sondern in einem separaten, ohne Weiterleitung. Also etwa so:
    Code:
    [redirected]
      exten => _X.,1,Dial(SIP/${EXTEN},${RINGTIMEOUT},t)
      exten => _X.,2,Hangup 
    
    In die IAX.CONF muß dann bei dem jeweiligen Eintrag noch ein "context=redirected" rein.