Configuring Asterisk as voicemail for a Panasonic KX-TD500
This article may be wrong, but the setup works for the TD500 that I have access.
While things in Asterisk-Panasonic1232vm seemed pretty straight forward, the instructions are only valid for “analog pbx” (whatever that could mean), but in the “digital” series things are completely different.
This method is uglybut works; because there is not a centralized facility for VM, so you will have to relay on forwards on each extension. The tecnician that programms the pbx is not useful at all.
The mising part is identical to the Asterisk-Panasonic1232vm
Also, if you know any better method, please put it here
To receive the “caller-id” of the specific extension, do the next:
- Enter the conmuter console (via serial in pbx port 1 and use a program like hyperterminal)
- Enter your password and go to programming mode
- Turn to dumb mode: Ctrl+V
- You may need to type PRG<enter> to enter programming mode
Once you have a prompt:
PRG>
VMD (voicemail directory number): it’s used to program to which ports the VM is connected:
PRG> VMD AT 01 ;configures the first DN (extension) connected to VM
01: Voice Mail DN………0
INPUT> DN600 ;supose it’s connected to DN600
02: Voice Mail DN………0
INPUT> DN601 ;supose it’s connected to DN601
03: Voice Mail DN………0
INPUT> $CLR ;to clear the slot
…
INPUT> $EOD ; to end the list
there are 16 slots
PRG> VMD SH ;to show the results
any call forwarded to these extensions will have the pseudo-caller id of the transfered extension, after the hook-up, usually #6<ext> to leave a new VM and #6*<ext> the message button (but you can change it)
VMC: voice mail service command: the sequence that identifies certain actions:
PRG> VMC SH ;shows current settings
PRG> VMC AT 1 ;changes the forward to VM sequence: default: #6H
PRG> VMC AT 2 ;changes the message button sequence: default: #6*H
Note1: H stands for extension, you can use 1-9, #, *, H: mailbox number
Note2: in my asterisk original installation, the #6H and #6*H sequences were not recognized, due to the # and * chars, so i changed it to 8H and 9H
VMT: voicemail transfer: the DN (extension) to use when transfering to VM
PRG> VMT AT DN600 <enter> ;asuming extension 600, DNxxx[x], 0 to clear
file: zapata.conf
context=voicemail
busydetect=yes
channel=1-2
file: extensions.conf
exten => s,1,Answer
exten => s,2,WaitExten(3)
exten => t,1,goto(fallbackcontext,#6,1)
;for leaving a voicemail
exten => _8XXX,1,set(LANGUAGE()=es) ;my extensions are 3 digit long
exten => _8XXX,2,Voicemail(${EXTEN:1},b)
exten => _8XXX,3,Hangup
;for retrieving voicemail using the integrated message button
exten => _91XX,1,Set(LANGUAGE()=es)
exten => _91XX,2,VoicemailMain(${EXTEN:1})
exten => _91XX,3,Hangup
[fallbackcontext]
exten => #6,1,set(LANGUAGE()=es)
exten => #6,2,VoicemailMain
exten => #6,3,Hangup
This script is almost the same one to light the mwi, except the dialed things
file: ast-mwi
my ($context,$ext,$msgs,@junk) = @ARGV;
my $callpath = “/var/spool/asterisk/outgoing”;
my $callfile = “$callpath/mwi-” . time();
my $chan = “ZAP/g1”;
$ext =~ s/\@default//;
if ($msgs > 0) {
#$channel = "ZAP/g1/701$ext";
$channel = “$chan/*9$ext”;
} else {
#$channel = "ZAP/g1/700$ext";
$channel = “$chan/#9$ext”;
}
print STDERR “channel: $channel\n”;
open (CALLFILE,”>$callfile”);
print CALLFILE qq(
Channel: $channel
MaxRetries: 4
RetryTime: 25
Context: vmail-mwi
Extension: s
Priority: 1
);
close(CALLFILE);