[Problem] IAX User

xrated

Mitglied
Mitglied seit
2 Jul 2012
Beiträge
788
Punkte für Reaktionen
1
Punkte
18
Hallo

weil chan_mobile unter Linux wegen Bluetooth/Pulseaudio zu einem Krampf mutiert ist habe ich einen zweiten Asterisk installiert auf dem ausschließlich chan_mobile läuft und die Gespräche via IAX zum anderen Server weitergeleitet werden sollen.

Ich habe das ganze konfiguriert aber am Zielserver landet das ganze immer im Default Kontext. Ich vermute das es am User liegt (unauthenticated call) aber habe das eigentlich so eingestellt wie ich im Netz gefunden habe. Was könnte da fehlen?

Server pbx 192.168.5.12:
Code:
[LIST=1]
[*]iax.conf:
[*][general]
[*]register => pbx:[email protected]
[*]

[*]

[*][pbx2]
[*]type = friend
[*]notransfer = yes
[*]host = dynamic
[*]auth = md5
[*]context = incoming-iax
[*]secret = pass
[*]deny = 0.0.0.0/0.0.0.0
[*]permit = 192.168.5.16/255.255.255.255
[*]qualify = yes
[*]

[*]extensions.conf:
[*][incoming-iax]
[*];for incoming calls from pbx2 on chan_mobile over iax2 connection
[*]exten => s,1,Goto(myexten,1) ;goto main extension
[*]

[*]Log:
[*] -- Accepting UNAUTHENTICATED call from 192.168.5.16:
[*]    --        > requested format = slin,
[*]    --        > requested prefs = (),
[*]    --        > actual format = ulaw,
[*]    --        > host prefs = (),
[*]    --        > priority = mine
[*]    -- Executing [s@default:1] Hangup("IAX2/pbx2-4737", "") in new stack
[*]  == Spawn extension (default, s, 1) exited non-zero on 'IAX2/pbx2-4737'
[*]    -- Hungup 'IAX2/pbx2-4737'
[/LIST]

Server pbx2 192.168.5.16 (nur chan_mobile Gateway)
Code:
[LIST=1]
[*]iax.conf:
[*][general]
[*]register => pbx2:[email protected]
[*]

[*]

[*][pbx]
[*]type = friend
[*]notransfer = yes
[*]host = dynamic
[*]auth = md5
[*]context = incoming-iax
[*]secret = pass
[*]deny = 0.0.0.0/0.0.0.0
[*]permit = 192.168.5.12/255.255.255.255
[*]qualify = yes
[*]

[*]chan_mobile.conf:
[*][honor4x]
[*]...
[*]..
[*].
[*]context=incoming-mobile
[*]

[*]

[*]extensions.conf:
[*][incoming-mobile]
[*]exten => s,1,Dial(IAX2/pbx/${EXTEN})
[*]same => n,Hangup
[*]

[*]Status:
[*]iax2 show registry
[*]Host                  dnsmgr  Username    Perceived             Refresh  State
[*]192.168.5.12:4569     N       pbx2        192.168.5.16:4569          60  Registered
[*]1 IAX2 registrations.
[*]

[*] iax2 show peers
[*]Name/Username    Host                 Mask             Port          Status      Description             
[*]pbx              192.168.5.12    (D)  255.255.255.255  4569          OK (1 ms)                           
[*]1 iax2 peers [1 online, 0 offline, 0 unmonitored]
[*]

[*]

[*]Log:
[*] == Spawn extension (incoming-mobile, s, 2) exited non-zero on 'Mobile/honor4x-4972'
[*]    -- Executing [s@incoming-mobile:1] Dial("Mobile/honor4x-b44b", "IAX2/pbx/s") in new stack
[*]    -- Called IAX2/pbx/s
[*]    -- Call accepted by 192.168.5.12 (format ulaw)
[*]    -- Format for call is (ulaw)
[*]    -- Hungup 'IAX2/pbx-251'
[*]    -- No one is available to answer at this time (1:0/0/0)
[*]    -- Executing [s@incoming-mobile:2] Hangup("Mobile/honor4x-b44b", "") in new stack
[/LIST]
 
Moin


Wenns ein unauthorisierter Guest call ist, wird der immer im [default] landen.
Wenn du willst kannst denn aber definieren.
In der sip.conf unter...
Code:
[general]
context=guestcalls              ; Default context for incoming calls. Defaults to 'default'
...für die Sicherheit ( keine Anrufe einfach mal so weiterleiten ) musste aber schon selber sorgen.
 
Ach so, ich verbiete sowas explizit mit...
Code:
[general]
allowguest=no
context=gibbetbeimirnicht
 
Da würde ich aber mal ansetzen.
Schau dir mit "iax2 set debug on" an was da abgeht.
Überhaupt: iax2 show [2x Tabtaste] und überprüfen
Ohne "allowguest=yes" muss ein Anrufer ja auch erst das "nonce" beantworten.
 
Zuletzt bearbeitet:
Kann ich mir nicht vorstellen, dann würde es keinen Sinn machen einen Context in der IAX Konfig anzugeben.

Edit:
Die Lösung ist einfach username hinzufügen im Context und alles gleich benennen d.h. kein pbx und pbx2 sondern identisch
 
Zuletzt bearbeitet:
OK, da haste Recht ;)
Ich hab jetzt einfach mal IAX2 frei nach dieser Anleitung...
http://das-asterisk-buch.de/1.6/iax.html
...ausprobiert, die funktioniert minimalistisch und ohne "register".
Von deeprasp...
Code:
[Nov  2 21:12:48]        > 0x74006ed0 -- Strict RTP learning after remote address set to: 192.168.188.10:50004
[Nov  2 21:12:48]     -- Executing [osmc@osmc:1] Dial("SIP/1005-00000002", "iax2/osmc/500") in new stack
[Nov  2 21:12:48] Tx-Frame Retry[000] -- OSeqno: 000 ISeqno: 000 Type: IAX     Subclass: NEW
[Nov  2 21:12:48]    Timestamp: 00019ms  SCall: 00103  DCall: 00000 192.168.188.9:4569
[Nov  2 21:12:48]    VERSION         : 2
[Nov  2 21:12:48]    CALLED NUMBER   : 500
[Nov  2 21:12:48]    CODEC_PREFS     : (g722|ulaw|alaw|siren14|siren7|slin16|slin|g726|g726aal2|adpcm|gsm|ilbc|speex|lpc10|g729|g723)
[Nov  2 21:12:48]    CALLING NUMBER  : 1005
[Nov  2 21:12:48]    CALLING PRESNTN : 0
[Nov  2 21:12:48]    CALLING TYPEOFN : 0
[Nov  2 21:12:48]    CALLING TRANSIT : 0
[Nov  2 21:12:48]    CALLING NAME    : 1005
[Nov  2 21:12:48]    LANGUAGE        : de
[Nov  2 21:12:48]    FORMAT          : 4096
[Nov  2 21:12:48]    FORMAT2         : g722
[Nov  2 21:12:48]    CAPABILITY      : 65535
[Nov  2 21:12:48]    CAPABILITY2     : Unknown
[Nov  2 21:12:48]    ADSICPE         : 2
[Nov  2 21:12:48]    DATE TIME       : 2018-11-02  21:12:48
...nach osmc...
Code:
[Nov  2 21:07:25]     -- Executing [500@osmc:1] Answer("IAX2/deeprasp-13583", "75") in new stack
[Nov  2 21:07:25] Tx-Frame Retry[000] -- OSeqno: 002 ISeqno: 002 Type: CONTROL Subclass: ANSWER
[Nov  2 21:07:25]    Timestamp: 00043ms  SCall: 13583  DCall: 09201 192.168.188.3:4569
[Nov  2 21:07:25] Rx-Frame Retry[ No] -- OSeqno: 002 ISeqno: 003 Type: IAX     Subclass: ACK
[Nov  2 21:07:25]    Timestamp: 00043ms  SCall: 09201  DCall: 13583 192.168.188.3:4569
[Nov  2 21:07:25] Tx-Frame Retry[000] -- OSeqno: 003 ISeqno: 002 Type: CONTROL Subclass: (255?)
[Nov  2 21:07:25]    Timestamp: 00046ms  SCall: 13583  DCall: 09201 192.168.188.3:4569
[Nov  2 21:07:25] Rx-Frame Retry[ No] -- OSeqno: 002 ISeqno: 004 Type: IAX     Subclass: ACK
[Nov  2 21:07:25]    Timestamp: 00046ms  SCall: 09201  DCall: 13583 192.168.188.3:4569
[Nov  2 21:07:25] Rx-Frame Retry[ No] -- OSeqno: 002 ISeqno: 004 Type: VOICE   Subclass: 4
[Nov  2 21:07:25]    Timestamp: 00202ms  SCall: 09201  DCall: 13583 192.168.188.3:4569
[Nov  2 21:07:25] Tx-Frame Retry[-01] -- OSeqno: 004 ISeqno: 003 Type: IAX     Subclass: ACK
[Nov  2 21:07:25]    Timestamp: 00202ms  SCall: 13583  DCall: 09201 192.168.188.3:4569
[Nov  2 21:07:26]     -- Executing [500@osmc:2] Verbose("IAX2/deeprasp-13583", "Caller: "1005" <1005>") in new stack
[Nov  2 21:07:26] Caller: 1005 <1005>
[Nov  2 21:07:26]     -- Executing [500@osmc:3] GosubIf("IAX2/deeprasp-13583", "1?osmc,moh,start:einszwei(1541189246)") in new stack
[Nov  2 21:07:26]     -- Executing [moh@osmc:3] WaitExten("IAX2/deeprasp-13583", "600,m(special)") in new stack
[Nov  2 21:07:26]     -- Started music on hold, class 'special', on channel 'IAX2/deeprasp-13583'
[Nov  2 21:07:26] Tx-Frame Retry[000] -- OSeqno: 004 ISeqno: 003 Type: VOICE   Subclass: 4
[Nov  2 21:07:26]    Timestamp: 00680ms  SCall: 13583  DCall: 09201 192.168.188.3:4569
[Nov  2 21:07:26] Rx-Frame Retry[ No] -- OSeqno: 003 ISeqno: 005 Type: IAX     Subclass: ACK
[Nov  2 21:07:26]    Timestamp: 00680ms  SCall: 09201  DCall: 13583 192.168.188.3:4569
[Nov  2 21:07:31] Rx-Frame Retry[ No] -- OSeqno: 003 ISeqno: 005 Type: IAX     Subclass: HANGUP
[Nov  2 21:07:31]    Timestamp: 06415ms  SCall: 09201  DCall: 13583 192.168.188.3:4569
[Nov  2 21:07:31]    CAUSE CODE      : 16
[Nov  2 21:07:31]
[Nov  2 21:07:31] Tx-Frame Retry[-01] -- OSeqno: 005 ISeqno: 004 Type: IAX     Subclass: ACK
[Nov  2 21:07:31]    Timestamp: 06415ms  SCall: 13583  DCall: 09201 192.168.188.3:4569
[Nov  2 21:07:31]     -- Stopped music on hold on IAX2/deeprasp-13583
[Nov  2 21:07:31]   == Spawn extension (osmc, moh, 3) exited non-zero on 'IAX2/deeprasp-13583'
 
Zuletzt bearbeitet:
Holen Sie sich 3CX - völlig kostenlos!
Verbinden Sie Ihr Team und Ihre Kunden Telefonie Livechat Videokonferenzen

Gehostet oder selbst-verwaltet. Für bis zu 10 Nutzer dauerhaft kostenlos. Keine Kreditkartendetails erforderlich. Ohne Risiko testen.

3CX
Für diese E-Mail-Adresse besteht bereits ein 3CX-Konto. Sie werden zum Kundenportal weitergeleitet, wo Sie sich anmelden oder Ihr Passwort zurücksetzen können, falls Sie dieses vergessen haben.