[gelöst] msns-Definition greift nicht

tomster

Mitglied
Mitglied seit
6 Dez 2004
Beiträge
238
Punkte für Reaktionen
0
Punkte
0
Servus zusammen!

Ich hab seit einiger Zeit einen * mit misdn am Laufen. Bislang hatte ich keine Zeit tiefer in die Materie einzusteigen und hab zunächst einmal schnell-schnell konfiguriert. Genauer gesagt habe ich in der
misdn.conf
[dialin]
ports=1,2
msn=*
context=dialin
always_immediate=yes

bzw. in
extensions.conf

[dialout]
exten => _XZ.,1,Set(CALLERID(num)=${CALLERID})
exten => _XZ.,2,Dial(mISDN/g:dialin/${EXTEN})

[dialin]
exten => s,1,macro,ruf|SIP|10

gesetzt. Damit kann ich telefonieren und auch angerufen werden. (Ferngespräche mit 00X laufen via SIP-Anbieter).

Nun habe ich ein bisschen mehr Zeit und wollte die Konfiguration etwas "sauberer" machen. Also dachte ich mir:

misdn.conf
[dialin]
msn=123456

extensions.conf
[dialin]
exten => 123456,1,macro,ruf|SIP|10

sollte die Sache lösen. Leider bekomme ich dann keine eingehenden Anrufe mehr. Das CLI beklagt immer, dass * die 's' Extension fehlen würde und der Anruf wird rejected. Aber gerade um 's' zu vermeiden habe ich doch die MSN eingetragen...

Hab ich was übersehen oder geht das so gar nicht?
 
Zuletzt bearbeitet:
typischer Konfigfehler. beim laden von chan_misdn bekommst du doch ne Warning dass er "msn" nicht kennt, hast du die noch nicht bemerkt?

jedenfalls unterstützt chan_misdn mehrere msns, also auch "msns" statt "msn"
 
Hallo Christian,

sorry, da hab ich mich wohl vertippt. In meiner misdn.conf steht natürlich
msns=*

Setze ich da msns=123456 dann nimmt er die Anrufe zwar an, aber nur wenn ich in der extensions.conf die 's'-extension setze:
exten => s,1,macro,ruf|SIP|10

Wenn ich aber
exten => 123456,1,macro,ruf|SIP|10

angebe, dann wird der Anruf rejected, bzw. sofort hangupped.
 
du kannst ja im ersten step in dem Kontext dialin mal eine extension der form:


exten => _X.,1,Playback(tt-monkeys)

machen, und schauen welche Nr. da überhaupt signalisiert wird.
 
Auch wenn ich das setze, dann meckert das CLI, dass ihm die 's' extension fehlt und er legt auf. Von den Affen ist also nix zu hören. [MSN] ist dabei die zugewiesene MSN aus der misdn.conf und [HandyNr] die Anrufernummer.

Ausgabe am CLI:
P[ 2] set_channel: bc->channel:0 channel:1
P[ 2] I IND :SETUP oad:[HandyNR] dad:[MSN]
P[ 2] --> mode:TE cause:16 ocause:16 rad:
P[ 2] --> facility:FAC_NONE out_facility:FAC_NONE
P[ 2] --> info_dad: onumplan:2 dnumplan:4 rnumplan:
P[ 2] --> screen:0 --> pres:0
P[ 2] --> channel:1 caps:Speech pi:0 keypad:
P[ 2] --> urate:0 rate:16 mode:0 user1:0
P[ 2] --> pid:0 addr:0 l3id:4002f
P[ 2] --> b_stid:0 layer_id:0
P[ 2] --> Bearer: Speech
P[ 2] --> Codec: Alaw
P[ 0] --> * NEW CHANNEL dad:[MSN] oad:[HandyNr]
P[ 2] read_config: Getting Config
P[ 2] config_jb: Called
P[ 2] --> * CallGrp: PickupGrp:
P[ 2] I SEND:pROCEEDING oad:[HandyNr] dad:[MSN]
P[ 2] --> mode:TE cause:16 ocause:16 rad:
P[ 2] --> facility:FAC_NONE out_facility:FAC_NONE
P[ 2] --> info_dad: onumplan:2 dnumplan:4 rnumplan:
P[ 2] --> screen:0 --> pres:0
P[ 2] --> channel:1 caps:Speech pi:0 keypad:
P[ 2] --> urate:0 rate:16 mode:0 user1:0
P[ 2] --> pid:0 addr:0 l3id:4002f
P[ 2] --> b_stid:0 layer_id:0
P[ 2] --> TRANSPARENT Mode
P[ 2] --> incoming_early_audio off
P[ 2] * Starting Ast ctx:incoming dad:[MSN] oad:[HandyNr] with 's' extension
P[ 2] BCHAN: MGR_SETSTACK|IND
== Starting mISDN/2-1 at incoming,s,1 failed so falling back to exten 's'
== Starting mISDN/2-1 at incoming,s,1 still failed so falling back to context 'default'
Jun 22 10:04:46 WARNING[725]: pbx.c:2353 __ast_pbx_run: Channel 'mISDN/2-1' sent into invalid extension 's' in context 'default', but no invalid handler
P[ 2] * IND : HANGUP pid:0 ctx:default dad:s oad:[HandyNr] State:DIALING
P[ 2] --> l3id:4002f
P[ 2] --> cause:16
P[ 2] --> out_cause:16
P[ 2] Tone Indicate:
P[ 2] I SEND:RELEASE_COMPLETE oad:[HandyNr] dad:[MSN]
P[ 2] --> mode:TE cause:16 ocause:16 rad:
P[ 2] --> facility:FAC_NONE out_facility:FAC_NONE
P[ 2] --> info_dad: onumplan:2 dnumplan:4 rnumplan:
P[ 2] --> screen:0 --> pres:0
P[ 2] --> channel:1 caps:Speech pi:0 keypad:
P[ 2] --> urate:0 rate:16 mode:0 user1:0
P[ 2] --> pid:0 addr:50010202 l3id:4002f
P[ 2] --> b_stid:10010200 layer_id:50010280
P[ 2] Channel: mISDN/2-1 hanguped
P[ 2] CC_RELEASE_COMPLETE|CONFIRM [TE]
P[ 2] I IND :RELEASE_COMPLETE oad:[HandyNr] dad:[MSN]
P[ 2] --> mode:TE cause:16 ocause:16 rad:
P[ 2] --> facility:FAC_NONE out_facility:FAC_NONE
P[ 2] --> info_dad: onumplan:2 dnumplan:4 rnumplan:
P[ 2] --> screen:0 --> pres:0
P[ 2] --> channel:1 caps:Speech pi:0 keypad:
P[ 2] --> urate:0 rate:16 mode:0 user1:0
P[ 2] --> pid:0 addr:50010202 l3id:4002f
P[ 2] --> b_stid:10010200 layer_id:50010280
P[ 2] Trying to Release bc with l3id: 4002f
P[ 2] I IND :CLEAN_UP oad: dad:
P[ 2] --> mode:TE cause:16 ocause:16 rad:
P[ 2] --> facility:FAC_NONE out_facility:FAC_NONE
P[ 2] --> info_dad: onumplan:0 dnumplan:0 rnumplan:0
P[ 2] --> screen:0 --> pres:0
P[ 2] --> channel:0 caps:Speech pi:0 keypad:
P[ 2] --> urate:0 rate:16 mode:0 user1:0
P[ 2] --> pid:0 addr:50010202 l3id:4002f
P[ 2] --> b_stid:0 layer_id:50010280
P[ 2] BCHAN: MGR_DELLAYER|CNF
P[ 1] set_channel: bc->channel:0 channel:1
P[ 1] I IND :SETUP oad:[HandyNr] dad:[MSN]
P[ 1] --> mode:TE cause:16 ocause:16 rad:
P[ 1] --> facility:FAC_NONE out_facility:FAC_NONE
P[ 1] --> info_dad: onumplan:2 dnumplan:4 rnumplan:
P[ 1] --> screen:0 --> pres:0
P[ 1] --> channel:1 caps:Speech pi:0 keypad:
P[ 1] --> urate:0 rate:16 mode:0 user1:0
P[ 1] --> pid:1 addr:0 l3id:20037
P[ 1] --> b_stid:0 layer_id:0
P[ 1] --> Bearer: Speech
P[ 1] --> Codec: Alaw
P[ 0] --> * NEW CHANNEL dad:[MSN] oad:[HandyNr]
P[ 1] read_config: Getting Config
P[ 1] config_jb: Called
P[ 1] --> * CallGrp: PickupGrp:
P[ 1] I SEND:pROCEEDING oad:[HandyNr] dad:[MSN]
P[ 1] --> mode:TE cause:16 ocause:16 rad:
P[ 1] --> facility:FAC_NONE out_facility:FAC_NONE
P[ 1] --> info_dad: onumplan:2 dnumplan:4 rnumplan:
P[ 1] --> screen:0 --> pres:0
P[ 1] --> channel:1 caps:Speech pi:0 keypad:
P[ 1] --> urate:0 rate:16 mode:0 user1:0
P[ 1] --> pid:1 addr:0 l3id:20037
P[ 1] --> b_stid:0 layer_id:0
P[ 1] --> TRANSPARENT Mode
P[ 1] --> incoming_early_audio off
P[ 1] * Starting Ast ctx:incoming dad:[MSN] oad:[HandyNR] with 's' extension
P[ 0] handle_bchan: BC not found for prim:120282 with addr:52010101 dinfo:ffffffff
Jun 22 10:05:03 WARNING[686]: chan_misdn.c:4346 chan_misdn_log: Unhandled Message: prim 120282 len 128 from addr 52010101, dinfo ffffffff on this port.
P[ 1] BCHAN: MGR_SETSTACK|IND
== Starting mISDN/1-1 at incoming,s,1 failed so falling back to exten 's'
== Starting mISDN/1-1 at incoming,s,1 still failed so falling back to context 'default'
Jun 22 10:05:03 WARNING[789]: pbx.c:2353 __ast_pbx_run: Channel 'mISDN/1-1' sent into invalid extension 's' in context 'default', but no invalid handler
P[ 1] * IND : HANGUP pid:1 ctx:default dad:s oad:[HandyNR] State:DIALING
P[ 1] --> l3id:20037
P[ 1] --> cause:16
P[ 1] --> out_cause:16
P[ 1] Tone Indicate:
P[ 1] I SEND:RELEASE_COMPLETE oad:[HandyNR] dad:[MSN]
P[ 1] --> mode:TE cause:16 ocause:16 rad:
P[ 1] --> facility:FAC_NONE out_facility:FAC_NONE
P[ 1] --> info_dad: onumplan:2 dnumplan:4 rnumplan:
P[ 1] --> screen:0 --> pres:0
P[ 1] --> channel:1 caps:Speech pi:0 keypad:
P[ 1] --> urate:0 rate:16 mode:0 user1:0
P[ 1] --> pid:1 addr:50010102 l3id:20037
P[ 1] --> b_stid:10010100 layer_id:50010180
P[ 1] Channel: mISDN/1-1 hanguped
P[ 1] CC_RELEASE_COMPLETE|CONFIRM [TE]
P[ 1] I IND :RELEASE_COMPLETE oad:[HandyNR] dad:[MSN]
P[ 1] --> mode:TE cause:16 ocause:16 rad:
P[ 1] --> facility:FAC_NONE out_facility:FAC_NONE
P[ 1] --> info_dad: onumplan:2 dnumplan:4 rnumplan:
P[ 1] --> screen:0 --> pres:0
P[ 1] --> channel:1 caps:Speech pi:0 keypad:
P[ 1] --> urate:0 rate:16 mode:0 user1:0
P[ 1] --> pid:1 addr:50010102 l3id:20037
P[ 1] --> b_stid:10010100 layer_id:50010180
P[ 1] Trying to Release bc with l3id: 20037
P[ 1] I IND :CLEAN_UP oad: dad:
P[ 1] --> mode:TE cause:16 ocause:16 rad:
P[ 1] --> facility:FAC_NONE out_facility:FAC_NONE
P[ 1] --> info_dad: onumplan:0 dnumplan:0 rnumplan:0
P[ 1] --> screen:0 --> pres:0
P[ 1] --> channel:0 caps:Speech pi:0 keypad:
P[ 1] --> urate:0 rate:16 mode:0 user1:0
P[ 1] --> pid:0 addr:50010102 l3id:20037
P[ 1] --> b_stid:0 layer_id:50010180
P[ 1] BCHAN: MGR_DELLAYER|CNF
P[ 2] MGMT: Short status dinfo 2000000
P[ 2] MGMT: SSTATUS: L2_RELEASED
P[ 2] MGMT: Short status dinfo 1000000
P[ 2] MGMT: SSTATUS: L1_DEACTIVATED
P[ 1] MGMT: Short status dinfo 2000000
P[ 1] MGMT: SSTATUS: L2_RELEASED
P[ 1] MGMT: Short status dinfo 1000000
P[ 1] MGMT: SSTATUS: L1_DEACTIVATED
localhost*CLI> exit

Nur falls es von Interesse ist:
An einigen Stellen im CLI wird bei [HandyNr] die vorangestellte "0" nicht angezeigt, aber das tut denk ich nix zur Sache.
 
Zuletzt bearbeitet:
zeig mal den output von "misdn show config" und paste hier mal bitte den tatsächlichen inhalt deiner extensions.conf, oder schicks mir als priv nachricht.
 
misdn show config

Misdn General-Config:
-> Version: chan_misdn-0.3.0-rc26
-> misdn_init: /etc/misdn-init.conf -> debug: 3
-> tracefile: /var/log/misdn.trace -> bridging: no
-> stop_tone_after_first_digit: yes -> append_digits2exten: yes
-> dynamic_crypt: no -> crypt_prefix: **
-> crypt_keys: test,muh
localhost*CLI>
[PORT 1]
-> name: incoming -> rxgain: 0
-> txgain: -1 -> te_choose_channel: no
-> pmp_l1_check: no -> hdlc: no
-> context: incoming -> language: de
-> musicclass: default -> callerid:
-> method: standard -> dialplan: 0
-> localdialplan: 0 -> cpndialplan: 0
-> nationalprefix: 0 -> internationalprefix: 00
-> presentation: -1 -> screen: -1
-> always_immediate: yes -> immediate: no
-> senddtmf: yes -> hold_allowed: yes
-> early_bconnect: yes -> incoming_early_audio: no
-> echocancel: 128 -> echocancelwhenbridged: no
-> echotraining: 0 -> need_more_infos: no
-> jitterbuffer: 4000 -> jitterbuffer_upper_threshold: 0
-> callgroup: -> pickupgroup:
-> msns: [MSN] -> ptp: no
localhost*CLI>
localhost*CLI>
[PORT 2]
-> name: incoming -> rxgain: 0
-> txgain: -1 -> te_choose_channel: no
-> pmp_l1_check: no -> hdlc: no
-> context: incoming -> language: de
-> musicclass: default -> callerid:
-> method: standard -> dialplan: 0
-> localdialplan: 0 -> cpndialplan: 0
-> nationalprefix: 0 -> internationalprefix: 00
-> presentation: -1 -> screen: -1
-> always_immediate: yes -> immediate: no
-> senddtmf: yes -> hold_allowed: yes
-> early_bconnect: yes -> incoming_early_audio: no
-> echocancel: 128 -> echocancelwhenbridged: no
-> echotraining: 0 -> need_more_infos: no
-> jitterbuffer: 4000 -> jitterbuffer_upper_threshold: 0
-> callgroup: -> pickupgroup:
-> msns: [MSN] -> ptp: no
localhost*CLI>


extensions.conf

[general]
static=yes
writeprotect=no

;Makros

[macro-ruf]
exten => s,1,NoOp(Wir sind im Macro ruf gelandet)
exten => s,n,Dial,${ARG1}/${ARG2}|15|r
exten => s,n,Goto,s-${DIALSTATUS}|1

exten => s-BUSY,1,voicemail,b${ARG2}
exten => s-BUSY,n,Hangup

exten => s-NOANSWER,1,voicemail,u${ARG2}
exten => s-NOANSWER,n,Hangup

exten => s-CHANUNAVAIL,1,voicemail,u${ARG2}
exten => s-CHANUNAVAIL,2,n,Hangup

;Echotest einrichten Anwahl mit 81

[echotest]
exten => 81,1,answer
exten => 81,2,wait,1
exten => 81,3,playback,demo-echotest
exten => 81,4,echo
exten => 81,5,playback,demo-echodone
exten => 81,6,hangup

;Mailboxabfrage mit 80

[mailbox]
exten => 80,1,answer
exten => 80,n,wait,1
exten => 80,n,voicemailmain
exten => 80,n,hangup

;Eigene Mailbox direkt abfragen mit 88
[mailbox_own]
exten => 88,1,answer
exten => 88,n,wait,1
exten => 88,n,voicemailmain,s${CALLERIDNUM}
exten => 88,n,hangup

;Anrufbeantworter-Settings

exten => asterisk,1,VoiceMailmain(${CALLERIDNUM})

;Hints

[hints]
exten => 10,hint,SIP/10
exten => 11,hint,SIP/11
exten => 12,hint,SIP/12
exten => 13,hint,SIP/13
exten => 14,hint,SIP/14
exten => 15,hint,SIP/15
exten => 16,hint,SIP/16
exten => 17,hint,SIP/17
exten => 18,hint,SIP/18
exten => 19,hint,SIP/19
exten => 20,hint,SIP/20
exten => 21,hint,SIP/21

[lokal]
exten => _1X,1,NoCDR()
exten => _1X,n,macro,ruf|SIP|${EXTEN}

exten => _2X,1,NoCDR()
exten => _2X,n,macro,ruf|SIP|${EXTEN}

exten => 55,1,Dial,SIP/10&SIP14

;Sipgate ankommend

[ankommend]
exten => [Account-Nr],1,macro,ruf|SIP|10

;Sipgate abgehend

[sipgate_out]

;exten => _00X.,1,Dial,SIP/${EXTEN}@[Account-Nr]|45

[isdn_raus]
;exten => _XX.,1,Dial(mISDN/g:incoming/{EXTEN})

exten => _XX.,1,Set(CALLERID(num)=${CALLERID})
exten => _XX.,2,Dial(mISDN/g:incoming/${EXTEN})

[incoming]
;exten => s,1,macro,ruf|SIP|10
exten => [MSN],1,macro,ruf|SIP|10
;exten => _X.,1,Playback(tt-monkeys)

[default]
include => lokal
include => sipgate_out
include => echotest
include => mailbox
include => mailbox_own
include => hints
include => ankommend
include => isdn_raus
include => incoming
 
wenn [MSN] die tatsächliche Nummer ist, muss das eigentlich gehen. Und du hast es auch schon mit '*' probiert .. vielleicht hattest du noch nicht die Kombination msns=* und in der extensions.conf _X., probier das mal nochmal.

Andernfalls würde ich dir empfehlen auf die neueste chan_misdn Version upzugraden. Die 0.3.0-rc26 gabs noch vor unserem ETSI Konformitätstest.
 
Hab upgegraded auf 0.3.1-rc14. Verbesserung? Gar keine.

in der misdn.conf steht msns=*

Aber Asterisk reagiert komischerweise auf nichts anderes als die 's'-extension. Weder _X. (also die Affen), noch _123456 oder 123456 bringt das Gespräch weiter. Sobald ich die 's'-extension auskommentiere wird sofort gehangupped.


Gibt es eine Möglichkeit genau zu sehen welche Rufnummer von misdn and Asterisk "übergeben" wird?
 
Zuletzt bearbeitet:
Yippie! Es geht!

Es lag schlichtweg daran, dass ich in der misdn.conf
always_immediate=yes
gesetzt habe. Dadurch springt msidn wohl IMMER in die 's'-extension. Ich hab deshalb einfach nur
immediate=yes
gesetzt. Nun geht es. Alle Nebenstellen sind durch anhängen der entsprechenden Nebenstelle an die HauptMSN von aussen erreichbar.
Vielen Dank an Christian Richter für den Tipp!
 
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.