Howto:Voicemail MWI for analogue user

From innovaphone-wiki

Jump to: navigation, search

If a user has one or more messages in his voicemail the following XML sample plays the message „you have a new message“ instead of the usual dial tone.

This is possible also with IP-Phones but only usefully if a device has no message waiting (MWI), for example a analogue phone set.

This XML plays also a voice message if the set has a activated CFU.

However, there are limitations, please note the “Appliles To” and “Knows Problems” section.


Applies To

This information applies to

We test with PBX version 11 and 12.

The device (Phone) must be an innovaphone IP Phone or on a innovaphone ATA (IP29, IP410 or similar).

It require the direct dial feature, therefore it would not work on IP-DECT.

More Information

The principle is quite simple: on the analogue interface, a destination in the “direct dial” field is configured (Gateway/Interface/Interface), therefore if the user pick up the receiver the phone calls this XML. The XML provide normal dialing tone if no CFU is on and no message is in, while a voice prompt is played if not.

If CFU and a VM in in both advices are played. During the play a user can dial, it is not required hear the entire message. After the message the user hear normal dial tone. If a CFU is on the user hear first for about 2 seconds the special dial tone and then the message.

The end of dial timeout is 20 seconds, after dialing the first digit, the dial tone plays no longer and the end of dial now is 4 seconds. The end of dial can be forced dialing #.


You have to copy all the files in the directory of the VM. Since the XML uses some VM prompts, a VM installation is required (even if just the CFU Feature is required). No extra license for this feature is necessary.

Now configure a VM object and point on the XML VMnote.xml. Define as destination in the direct dial (number or name) and 0 seconds delay (Feature Code flag must be switched on).


In the packet, there are the prompts for German and Italian installation, but there are all languages possible, you just have to provide some prompts. First you have to open the XML with the editor and change the language id: scroll to the end of the XML until you see the line

 <assign out="$lang" value="it" />    

For example edit the „it“ in „en“ for English. Of cause, you have to install first the Englisch VM.

You need two additional promts, “_umgeleitet.gxxx” play that the user has a CFU activated and “_kfesteARU.gxxx” play that the CFU is cleared.

If you do not want the CFU message (so just VM message) delete the following code in the XML:

<pbx-query-obj name="$cn" type="cfu" out="$to" />

<if cond="$to"> <lib-strcat out-string="$res" string="$lang" string2="_umgeleitet.$coder"/>

<store-get root="" name="$res" out-url="$ctrl" />

<pbx-prompt url="$ctrl" repeat="false" />

<assign out="$string" value="$to" />

<store-get root="" name="silence.$coder" out-url="$ctrl"/>

<pbx-prompt url="$ctrl" repeat="false" sec="1"/>

</if> ''

Known Problems

This type of setup works only without block dial, but block dial can be done after Dial tone is provided (for example for repeat last number).

If CFU is switched on diaing is possible just after the end of the special dial tone (2 seconds).

The DTMF Featurecode are switched off, but the XML provide at least the CFU Feature (*21xxx for set CFU and *22 for clear a CFU). This code is fix in the XML but you can changed in the code (search for *21 in the code and you will understand).


  • Download the complete file package of scripts and files described in this article.
Personal tools