Coverbild des Asterisk Buches von Stefan Wintermeyer

Letzte Woche => Endspurt!

Montag den 29.01.07 geht das Buch in die Produktion. Bis dahin laeuft der Beta-Test noch in vollem Umfang. Bitte melden Sie Fehler! Siehe Beta-Test FAQ.

Erscheinungstermin: 03.03.07. Das Buch wird auf dem Asterisk-Tag.org in Chemnitz vorgestellt und kann dort auch erworben werden. 10 Tage spaeter wird es im Buchhandel sein. Wer nicht in Chemnitz sein kann, sollte das Buch vorbestellen: Amazon oder direkt beim Verlag

Asterisk-Schulungen und Consulting vom Autor dieses Buches finden Sie auf http://www.amooma.de. Naechste Asterisk-Schulung: 12.02. - 13.02.07 (noch 1 Platz frei) - Ach ja, ... wir suchen auch noch Asterisk Entwickler! => http://www.amooma.de/jobs/


10.25. DISA()

Direct Inward System Access erlaubt auswärtigen Anrufern Anrufe mit internem System-Wählton.

DISA(Passwort[,Kontext[,CallerID[,Mailbox[@VM-Kontext]]]])
DISA(Passwort-Datei[,CallerID[,Mailbox[@VM-Kontext]]])

Erlaubt Anrufern von außen einen internen System-Wählton zu erhalten und entsprechend Anrufe zu tätigen, als würden diese von innerhalb des Switches aus getätigt. Dem Teilnehmer wird ein Wählton zur Verfügung gestellt, nach dem er einen Zugangskode eingeben muss gefolgt von der Rautetaste (#). Ist der Zugangskode korrekt, erhält er einen System-Wählton, auf dem er einen Anruf tätigen kann.

Achtung

Diese Art von Zugang kann ein ernstes Sicherheitsrisiko sein und sollte sorgfältig überlegt werden, damit die Sicherheit Ihres Systems nicht gefährdet ist!

Der Passwort-Parameter ist ein numerischer Zugangskode, den der Benutzer eingeben muss, um Anrufe tätigen zu können. Mit dieser Syntax werden alle Benutzer dieser Extension das gleiche Passwort benutzen. Möchten Sie Benutzern erlauben, DISA() ohne Passwort zu verwenden, übergeben Sie die Zeichenkette no-password an der Stelle des Passwortes.

Der Kontext-Parameter spezifiziert den Kontext, in dem sich ein Benutzer einwählen wird. Wird kein Kontext spezifiziert, nimmt die DISA()-Anwendung den Kontext disa an.

Die CallerID ist die Mailbox-Nummer (und optional Voicemail-Kontext VM-Kontext) einer Voicemailbox. Der Anrufer wird einen so genannten „stuttered dial-tone“ (das ist ein regelmäßig kurz unterbrochener, „stotternder“ Wählton) hören, falls neue Nachrichten in der angegebenen Voicemailbox vorliegen.

Außerdem können Sie eine alternative Syntax benutzen und den Namen einer global verfügbaren Passwortdatei statt der Parameter Passwort und Kontext übergeben. In jeder Zeile kann diese Datei entweder einen Zugangskode oder eine Kombination aus Zugangskode und Kontext, getrennt durch das Zeichen |, enthalten. Ist kein Kontext mit angegeben, wird standardmäßig der Kontext disa verwendet.

Ist das Einloggen des Teilnehmers erfolgreich, wird die Anwendung die gewählte Nummer in dem spezifizierten Kontext interpretieren.

; Anrufern von außen erlauben, 0800er-Nummern zu wählen, sofern sie
; das Passwort (1234) wissen. Dabei ihre Caller-ID so setzen, dass
; es aussieht, als riefen sie von innerhalb der Firma an:
[incoming]
exten => 123,1,DISA(1234,disa,Apfelmus GmbH <(0261) 1234567>)
[disa]
exten => _0800XXXXXXXX,1,Dial(Zap/4/${EXTEN})

Anmerkung

Interner Hilfetext zu dieser Applikation in Asterisk 1.4: 

  -= Info about application 'DISA' =- 

[Synopsis]
DISA (Direct Inward System Access)

[Description]
DISA(<numeric passcode>[|<context>]) or DISA(<filename>)
The DISA, Direct Inward System Access, application allows someone from 
outside the telephone switch (PBX) to obtain an "internal" system 
dialtone and to place calls from it as if they were placing a call from 
within the switch.
DISA plays a dialtone. The user enters their numeric passcode, followed by
the pound sign (#). If the passcode is correct, the user is then given
system dialtone on which a call may be placed. Obviously, this type
of access has SERIOUS security implications, and GREAT care must be
taken NOT to compromise your security.

There is a possibility of accessing DISA without password. Simply
exchange your password with "no-password".

    Example: exten => s,1,DISA(no-password|local)

Be aware that using this compromises the security of your PBX.

The arguments to this application (in extensions.conf) allow either
specification of a single global passcode (that everyone uses), or
individual passcodes contained in a file. It also allows specification
of the context on which the user will be dialing. If no context is
specified, the DISA application defaults the context to "disa".
Presumably a normal system will have a special context set up
for DISA use with some or a lot of restrictions. 

The file that contains the passcodes (if used) allows specification
of either just a passcode (defaulting to the "disa" context, or
passcode|context on each line of the file. The file may contain blank
lines, or comments starting with "#" or ";". In addition, the
above arguments may have |new-callerid-string appended to them, to
specify a new (different) callerid to be used for this call, for
example: numeric-passcode|context|"My Phone" <(234) 123-4567> or 
full-pathname-of-passcode-file|"My Phone" <(234) 123-4567>.  Last
but not least, |mailbox[@context] may be appended, which will cause
a stutter-dialtone (indication "dialrecall") to be used, if the
specified mailbox contains any new messages, for example:
numeric-passcode|context||1234 (w/a changing callerid).  Note that
in the case of specifying the numeric-passcode, the context must be
specified if the callerid is specified also.

If login is successful, the application looks up the dialed number in
the specified (or default) context, and executes it if found.
If the user enters an invalid extension and extension "i" (invalid) 
exists in the context, it will be used. Also, if you set the 5th argument
to 'NOANSWER', the DISA application will not answer initially.

Differenz zum internen Hilfetext in Asterisk 1.2: 

8c8
< DISA(<numeric passcode>[|<context>]) or DISA(<filename>)
---
> DISA(<numeric passcode>[|<context>]) or disa(<filename>)
28c28
< individual passcodes contained in a file. It also allows specification
---
> individual passcodes contained in a file. It also allow specification
52,53c52
< exists in the context, it will be used. Also, if you set the 5th argument
< to 'NOANSWER', the DISA application will not answer initially.
---
> exists in the context, it will be used.