Quantcast
Channel: IP-Phone-Forum
Viewing all articles
Browse latest Browse all 15636

[Problem] overlap receiving für beliebige Rufnummern

$
0
0
Hallo Forum,

ich nutze eine DIVA 4BRI in einem Asterisk, um den Amtskopf für eine Octopus E300 zu machen. Die Karte läuft im NT-Modus und es muss nun folgendes geleistet werden:
abhängig von der CALLERID soll ein bestimmtes SIP-Konto zum Rauswählen genutzt werden.

Ich hatte dazu ein "catch-all" mit einer Fallunterscheidung nach diesem Schema eingerichtet:
Code:

exten => _X.,1,Verbose(Ruf aus der E300 von ${CALLERID(num)} nach ${EXTEN})
 same => n,Ringing()
 same => n,GotoIf($["${CALLERID(num)}"="${RUMPF}217"]?amt_1125789)

Das funktioniert natürlich nur mit Blockwahl gut. Wählt man aus der E300 per overlap (also analoger Tln. oder Wahl aus Rückfrage), schnappt sich Asterisk die ersten 1 bis 3 Ziffern und wertet sie aus.

Ich habe es anschließend nun probiert mit einem WaitExten:
Code:

exten => _X.,1,Verbose(Ruf aus der E300 von ${CALLERID(num)} nach ${EXTEN})
 same => n,WaitExten(2)
 same => n,Ringing()
 same => n,GotoIf($["${CALLERID(num)}"="${RUMPF}217"]?amt_1125789)

Das hat den merkwürdigen Effekt, dass Asterisk zwar wartet, aber die z. B. zwei Ziffern, die schon gewählt waren, verschluckt und diese nicht mehr Teil von ${EXTEN} sind.

Dann habe ich in der capi.conf immediate=yes gesetzt und probehalber einfach nur folgende Extension gebaut:
Code:

exten =>s,1,WaitExten(10)
  same => n,Verbose(${EXTEN})

Code:

Ergebnis: die Extension wird auch angelaufen, aber der Timeout wird abgebrochen sobald die erste Ziffer gewählt wird:
  == ISDN1#02: Incoming call '0309234' -> ''
    -- Executing [s@bri_e300:1] NoOp("CAPI/ISDN1#02/-a", "") in new stack
    -- Executing [s@bri_e300:2] WaitExten("CAPI/ISDN1#02/-a", "15") in new stack
    -- ISDN1#02: Updated channel name: CAPI/ISDN1#02/1-b
[Feb 12 20:50:41] WARNING[26327]: pbx.c:5413 __ast_pbx_run: Invalid extension '1', but no rule 'i' or 'e' in context 'bri_e300'
  == ISDN1#02: CAPI Hangingup for PLCI=0x201 in state 7
      > ISDN1#02: CAPI INFO 0x3490: Normal call clearing

Was mache ich falsch? Ich verstehe nicht, warum bei der letzten Version das WaitExten einfach abgebrochen wird.

Viewing all articles
Browse latest Browse all 15636


<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>