# Asterisk Project : Asterisk 13 Application_Directory

Created by wikibot on Aug 08, 2014

# Directory()

### Synopsis

Provide directory of voicemail extensions.

### Description

This application will present the calling channel with a directory of extensions from which they can search by name. The list of names and corresponding extensions is retrieved from the voicemail configuration file, `voicemail.conf`.

This application will immediately exit if one of the following DTMF digits are received and the extension to jump to exists:

0 - Jump to the 'o' extension, if it exists.

- - Jump to the 'a' extension, if it exists.

This application will set the following channel variable before completion:

- `DIRECTORY_RESULT` - Reason Directory application exited.
  - OPERATOR - User requested operator
  - ASSISTANT - User requested assistant
  - TIMEOUT - User allowed DTMF wait duration to pass without sending DTMF
  - HANGUP - The channel hung up before the application finished
  - SELECTED - User selected a user to call from the directory
  - USEREXIT - User exited with '#' during selection
  - FAILED - The application failed

### Syntax

    Directory([vm-context,[dial-context,[options]]])

##### Arguments

- `vm-context` - This is the context within voicemail.conf to use for the Directory. If not specified and `searchcontexts=no` in `voicemail.conf`, then `default` will be assumed.
- `dial-context` - This is the dialplan context to use when looking for an extension that the user has selected, or when jumping to the `o` or `a` extension. If not specified, the current context will be used.
- `options`
  - `e` - In addition to the name, also read the extension number to the caller before presenting dialing options.
  - `f` - Allow the caller to enter the first name of a user in the directory instead of using the last name. If specified, the optional number argument will be used for the number of characters the user should enter.
    - `n`
  - `l` - Allow the caller to enter the last name of a user in the directory. This is the default. If specified, the optional number argument will be used for the number of characters the user should enter.
    - `n`
  - `b` - Allow the caller to enter either the first or the last name of a user in the directory. If specified, the optional number argument will be used for the number of characters the user should enter.
    - `n`
  - `a` - Allow the caller to additionally enter an alias for a user in the directory. This option must be specified in addition to the `f`, `l`, or `b` option.
  - `m` - Instead of reading each name sequentially and asking for confirmation, create a menu of up to 8 names.
  - `n` - Read digits even if the channel is not answered.
  - `p` - Pause for n milliseconds after the digits are typed. This is helpful for people with cellphones, who are not holding the receiver to their ear while entering DTMF.
    - `n`

      Note

      Icon

      Only one of the f, l, or b options may be specified. If more than one is specified, then Directory will act as if b was specified. The number of characters for the user to type defaults to `3`.

### See Also

### Import Version

This documentation was imported from Asterisk Version SVN-branch-13-r420538