ipdialplan.xml an Rufnummernformat anpassen?

McSeven

Neuer User
Mitglied seit
22 Jan 2006
Beiträge
37
Punkte für Reaktionen
0
Punkte
6
Hi *,

ich hab auf meinem Touch Diamond die Windows Internet-Telefonie angepaßt
und über WLAN an mein Asterisk angebunden.

Meine Extensions sind so konfiguriert, dass man für's raustelefonieren eine 0
Vorwählen muss. Rufe ich die 999 an, so komme ich zur Mailbox, 1000 bis 1005
sind interne Nutzer, dich ich vom Handy (1010) über VOIP durch Wahl von eben 1000 bis 1005 super erreiche. Mailbox mit 999 geht auch.

Das Problem ist jetzt, wenn ich raustelefonieren möchte:
Meine Kontakte sind gespeichert als:
- 0171 2222 3333
- +49(171)2222 3333
- +49 (171) 2222 3333
- +49(89)2222222
- +49 (89) 2222222
- +49 (89) 2222222-23
- +49 (89) 2222222 - 23

Also nicht einheitlich. Wie sage ich dem Windows Mobile Device,
dass es alle Sonderzeichen eliminieren soll und aus +49 eine "00"
macht (0 für Rauswählen, 0 für Vorwahl) und aus + alles andere
(z.B. +43) ein "000allesandere", also "00043"?

Wenn ich nämlich von Hand "0017122222222" wähle, geht es
einwandfrei...

Hat das schonmal wer gemacht? Danke.
Seven
 
Hi *,

also ich hab's gelöst, zumindest für die Fälle, in denen eure Telefonnummern
im Outlookformat "+49 (89) 123456" oder "+49 (89) 123456-12" gespeichert
sind. Funktioniert natürlich auch mit ausländischen Nummern "+1 (12) 12345"
für eine amerikanische Nummer z.B.

Meine \Windows\ipdialplan.xml sieht wie folgt aus:
Code:
<dialplan xmlns='http://schemas.microsoft.com/embedded/VoIP'>
    <dialplan-header>
        <host>#use_sipsrv_host_name#</host>
    </dialplan-header>
    <!-- Dial Plan rules -->

    <!-- IP address rules -->
    <rule pattern='\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}' restrict='Cell,SMS' />
    <rule pattern='(\d{1,3})\*(\d{1,3})\*(\d{1,3})\*(\d{1,3})' dial='\1.\2.\3.\4' display='\1.\2.\3.\4' transfer='\1.\2.\3.\4' restrict='Cell,SMS' />

    <!-- 11-digits rules -->
    <rule pattern='1\s*-?\s*(\d{3})\s*(\d{3})\s*-?\s*(\d{4})(\s*[Xx]\s*\d+)?' dial='sip:91\1\2\3@$host$' display='1 (\1) \2-\3' transfer='sip:1\1\2\3@$host$' />
    <rule pattern='1\s*-?\s*\((\d{3})\)\s*(\d{3})\s*-?\s*(\d{4})(\s*[Xx]\s*\d+)?' dial='sip:91\1\2\3@$host$' display='1 (\1) \2-\3' transfer='sip:1\1\2\3@$host$' />
 
 <!-- 
    <-- Ausgeklammert und unten fuer Deutschland und mein Asterisk (extern="0" vorwaehlen) angepasst -->
    <rule pattern='\+\s*1\s*-?\s*(\d{3})\s*(\d{3})\s*-?\s*(\d{4})(\s*[Xx]\s*\d+)?' dial='sip:91\1\2\3@$host$' display='+1 (\1) \2-\3' transfer='sip:1\1\2\3@$host$' />
    <rule pattern='\+\s*1\s*-?\s*\((\d{3})\)\s*(\d{3})\s*-?\s*(\d{4})(\s*[Xx]\s*\d+)?' dial='sip:91\1\2\3@$host$' display='+1 (\1) \2-\3' transfer='sip:1\1\2\3@$host$' />
 -->
 
    <!-- 10-digits rules -->
    <rule pattern='(\d{3})\s*(\d{3})\s*-?\s*(\d{4})(\s*[Xx]\s*\d+)?' dial='sip:9\1\2\3@$host$' display='(\1) \2-\3' transfer='sip:\1\2\3@$host$' />
    <rule pattern='\((\d{3})\)\s*(\d{3})\s*-?\s*(\d{4})(\s*[Xx]\s*\d+)?' dial='sip:9\1\2\3@$host$' display='(\1) \2-\3' transfer='sip:\1\2\3@$host$' />
    
    <!-- 7-digits rules -->
    <rule pattern='(\d{3})\s*-?\s*(\d{4})' dial='sip:9425\1\2@$host$' display='\1-\2' transfer='sip:425\1\2@$host$' />

    <!-- SIP URI rules -->
    <rule pattern='[Ss][Ii][Pp][Ss]?:\s*(\d{3})(\d{3})(\d{4})@(.+)' display='(\1) \2-\3' restrict='Cell,SMS' />
    <rule pattern='([Ss][Ii][Pp][Ss]?:)?\s*([a-zA-Z0-9_-]+)@(.+)' display='\2' restrict='Cell,SMS' />
    <rule pattern='[Ss][Ii][Pp][Ss]?:\s*([^@]+)' display='\1' restrict='Cell,SMS' />

    <!-- 5-digits rules -->
    <rule pattern='(\d{3})-?(\d{2})' dial='sip:\1\2@$host$' display='\1\2' transfer='sip:\1\2@$host$' />
    <rule pattern='1\s*\((\d{3})\)\s*(\d)' dial='sip:1\1\2@$host$' display='1\1\2' transfer='sip:1\1\2@$host$' />
    
    <!-- Only digits -->
    <rule pattern='(\d+)' dial='sip:\1@$host$' display='\1' transfer='sip:\1@$host$' />

    <!-- DE -->
    <rule pattern='\+49\s*\(0?(\d+)\)\s*(\d+)\s*-\s*(\d+)' dial='sip:00\1\2\3@$host$' display='+49 (\1) \2-\3' transfer='sip:00\1\2\3@$host$' />
    <rule pattern='\+49\s*\(0?(\d+)\)\s*(\d+)' dial='sip:00\1\2@$host$' display='+49 (\1) \2' transfer='sip:00\1\2\3@$host$' />

    <!-- FOREIGN -->
    <rule pattern='\+(\d+)\s*\(0?(\d+)\)\s*(\d+)\s*-\s*(\d+)' dial='sip:000\1\2\3\4@$host$' display='+\1 (\2) \3-\4' transfer='sip:000\1\2\3\4@$host$' />
    <rule pattern='\+(\d+)\s*\(0?(\d+)\)\s*(\d+)' dial='sip:000\1\2\3@$host$' display='+\1 (\2) \3' transfer='sip:000\1\2\3@$host$' />

</dialplan>

Nicht vergessen, das Handy neu zu starten, damit die Änderungen in dieser Datei übernommen werden!

Hoffe, das hilft jemandem.

Bye, Seven
 
Jep, das hat geholfen. Wenn man diese führende Null allerdings nicht braucht, reicht es völlig aus, den "Foreign"-Abschnitt (mit zwei Nullen anstatt drei!) in die vorhandene ipdialplan.xml einzufügen.
 
und mit sowas kann man auch ueber seinem GSM-Anbieter direkt waehlen

<!-- GSM with the international format of 00xxxxxxxxx -->
<rule pattern='00(\d+)'
restrict='VoIP'
/>

<!-- GSM with the international format of +xxxxxxxxx -->
<rule pattern='\+(\d+)'
restrict='VoIP'
/>

<!-- GSM with just local provider like 017x, 015x etc. -->
<rule pattern='01(\d+)'
restrict='VoIP'
/>


Gruss
noway
 
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.