Authenticate( ) Requires that the caller enter a correct password before continuing

 

    Authenticate(password[,options])

 

Requires a caller to enter a given password in order to continue execution of the next priority in the dialplan. Authenticate( ) gives the caller three chances to enter the password correctly. If the password is not correctly entered after three tries, the channel is hung up.

If password begins with the / character, it is interpreted as a file that contains a list of valid passwords (one per line). Passwords may also be stored in the Asterisk database (AstDB); see the d option below.

A set of options may be provided, consisting of one or more of the letters in the following list.



a

Sets the CDR field named accountcode and the channel variable ACCOUNTCODE to the password that is entered



d

Interprets the path as the database key from the Asterisk database in which to find the password, not a literal file. When using a database key, the value associated with the key can be anything.



r

Removes the database key upon successful entry (valid with d only).

Returns 0 if the user enters a valid password within three tries, or -1 otherwise (or on hangup).

    ; force the caller to enter the password before continuing, 
      and set the CDR field
    ; named 'accountcode' to the entered password
    exten => 123,1,Answer
    exten => 123,2,Authenticate(1234,a)
    exten => 123,3,Playback(pin-number-accepted)
    exten => 123,4,SayDigits(${ACCOUNTCODE})

 

See Also

VMAuthenticate( )More Dialplan Concepts