probleme bei enumlookup asterisk v1.2

lans38

Neuer User
Mitglied seit
10 Jan 2006
Beiträge
2
Punkte für Reaktionen
0
Punkte
0
hallo alle zusammen,

hat jemand erfahrung mit dem neuen enumlookup von asterisk version 1.2 in verbindung mit mehreren einträgen (NAPTR-RR).
folgendes szenario:
2 asterisk server (as1 und as2)

as1 bekommt bei mir den den passenden eintrag vom DNS und wählt auch diesen an, falls jetzt aber das softphone am as2 nicht angemeldet ist, bricht as1 den gesamten vorgang ab, da as2 signalisiert dass das softphone nicht angemeldet ist und auflegt.

Jetzt müsste as1 aber doch eigentlich den nächsten eintrag (NAPTR-RR) aufrufen,oder stimmt etwas mit der while() schleife nicht.??
Falls ich in den NAPTR-RR neben einer echten Adresse noch fantasie adressen benutze, werden alle korrekt abgearbeitet bis zur wirklich vorhandenen adresse.

hier meine extension.conf:
Code:
[global]
RINGTIME=20

[default]
exten => s,1,Playback(beep)
exten => 3029965,1,Dial(Zap/1/${EXTEN},${RINGTIME})
exten => 3029965,2,Playback(vm-goodbye)
exten => 3029965,3,Hangup
exten => _[1]X.,1,Macro(SIP_intern,${EXTEN})
exten => _[2]X.,1,Macro(IAX_intern,${EXTEN})
exten => _8,1,Playback(lots-o-monkeys)
exten => _9,1,Playback(vm-goodbye)

;ENUM Abfrage, kein Ausland (0 fuer Amt)
exten => _0X.,1,Set(NUM=${EXTEN:1})
exten => _0X.,2,GotoIf($["${NUM}" : (0..)]?4:3) ; pruefen ob ortsgespraech
exten => _0X.,3,Set(NUM=088${NUM})              ; wenn ja, wird der vorwahlbereich angehangen
exten => _0X.,4,Playback(doing-enum-lookup)
exten => _0X.,5,Set(iax_count=${ENUMLOOKUP(49${NUM:1},iax2,c)}|counter=0)
exten => _0X.,6,GotoIf($["${counter}"<"${iax_count}"]?7:102)
exten => _0X.,7,Playback(enum-lookup-successful)
exten => _0X.,8,While($["${counter}"<"${iax_count}"])
exten => _0X.,9,Set(counter=$[${counter}+1])
exten => _0X.,10,Dial(IAX2/${ENUMLOOKUP(49${NUM:1},iax2,${counter})})
exten => _0X.,12,EndWhile
exten => _0X.,14,Set(sip_count=${ENUMLOOKUP(49${NUM:1},sip,c)}|counter=0)
exten => _0X.,15,GotoIf($["${counter}"<"${sip_count}"]?16:102)
exten => _0X.,16,While($["${counter}"<"${sip_count}"])
exten => _0X.,17,Set(counter=$[${counter}+1])
exten => _0X.,18,Dial(SIP/${ENUMLOOKUP(49${NUM:1},sip,${counter})})
exten => _0X.,19,EndWhile
exten => _0X.,102,Playback(enum-lookup-failed)
exten => _0X.,103,Dial(CAPI/ISDN1/${EXTEN:1})
exten => _0X.,104,Hangup

[macro-SIP_intern]
exten => s,1,Dial(SIP/${ARG1},${RINGTIME})
exten => s,2,Playback(vm-goodbye)
exten => s,3,Hangup

[macro-IAX_intern]
exten => s,1,Dial(IAX2/iax${ARG1})
exten => s,2,Playback(vm-goodbye)
exten => s,3,Hangup

[local]
include=>default

anmerkung : die extension.conf ist auf beiden rechnern gleich (bis auf vorwahl)

ich hoffe ich hab mein problem einigermaßen verständlich erklärt....

danke schon mal im voraus.

heiko
 
Hallo Heiko,

ohne die Logik jetzt näher betrachtet zu haben fehlt schon mal die ,13,

exten => _0X.,12,EndWhile
exten => _0X.,14,Set(sip_count=${ENUMLOOKUP(49${NUM:1},sip,c)}|counter=0)

Gruß,
Tin
 
hallo tin,

das mit den nummern hab ich mal korrigiert, die 11 fehlte übrigens auch noch. Leider klappts immer noch nicht.

zum (hoffentlich) besseren verständnis häng ich mal noch den zonen Eintrag an.
Code:
1.0.1.8.8.9.4.e164.arpa. IN NAPTR 1 10 "u" "E2U+IAX2" "!^.*[email protected]/101!" .
                         IN NAPTR 2 10 "u" "E2U+IAX2  "!^.*[email protected]/3029965!" .

-- as1 versucht softphone [101] zu erreichen.
-- softphone [101] ist nicht am as2 angemeldet. as2 legt auf ("keine route")
-- Nun soll as1 den zweiten Eintrag nutzen und den gleichen server (as2) mit einer anderen durchwahl (3029965) kontaktieren - ein ISDN Telefon.
-- as1 legt aber einfach auf!!! , macht keinen erneuten enumlookup; schleife wird abgebrochen

irgendwelche ideen???

gruss
heiko

p.s.: das mit logik ist hier ne ganz andere story; ist momentan nur eine testumgebung in meiner uni.
 
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.