The voicemail.conf file need not serve only as a
directory source; it can also be used as a general storage file for
passwords. You may encounter situations where users must authenticate for
reasons other than retrieving voicemail - for example, call agents logging
in at a call center.
As a result, it is sometimes necessary to create
voicemail.conf entries for users, even if they have no need
for a mailbox. Don't worry about callers accidentally leaving messages in
an unattended mailbox; only mailboxes explicitly referenced through an
extension using VoiceMail() or VoiceMailMain()
in extensions.conf will be accessible to callers.
For example, you might make two entries in the context [call-center-agents] in voicemail.conf:
1001 => 1234,Annaliese Chips,,,hidefromdir=yes 1002 => 1234,Donald Down,,,hidefromdir=yes
You can use these entries to authenticate a user with the dialplan application VMAuthenticate() (see ???):
exten => 988,n,Read(agentno,agent-user,10,,3)
exten => 988,n,VMAuthenticate(${agentno}@call-center-agents)
Dont let this example limit your creativity, however. There are many ways to authenticate users, of which this is only one. Saving passwords in AstDB or another database (such as MySQL, for example) is usually preferable.