Howto:Announcement Before Answering (simplified)

From innovaphone wiki
Revision as of 19:23, 10 June 2014 by Ckl (talk | contribs) (New page: This is a simplified version of the Howto:Announcement Before Answering utility. This version is based on an XML script that plays the announcement. As opposed to the other version,...)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search

This is a simplified version of the Howto:Announcement Before Answering utility. This version is based on an XML script that plays the announcement. As opposed to the other version, it will first play the announcement and then connect to the called party. The called party is not called simultaneously to playing the announcement. It is simpler in so far as it does not require to create a separate PBX object for each called party using this service.


Applies To

This information applies to

  • V10 SR10 PBX and later.


More Information

Configuration

This announcement before answering configuration is based on the Voicemail PBX object. The Waiting Queue has a personal announcement configured separately for each PBX User object.


We assume an existing PBX user with the name PBX User 1 and number 201 with following desired behaviour: an external call to this user is always immediately connected to the announcement. The announcement is played and when it is finished, the caller is put through to the extension.

Voicemail
Create a Voicemail vm-txt. Configure the Script URL as http://x.x.x.x/drive/CF0/txtvormelden/announcement_before_answer.xml?$_trace=255 and the Number to 9 (check Voicemail Reference for more information).
Announcement Before Answering (simplified) 01.png


Announcement Before Answering (simplified) 01a.png
Call Forward to Voicemail
Create a so-called administrative call forward on the User object: create a CFU with Only Not. from 9 (which is the Number of the voicemail object) to the Number of the Voicemail object followed by the Number of the user (9202 in our example). This CFs can not be deleted by user configured CFs via a phone function key etc., but will be overridden by user configured CFUs (if there is one).
Announcement Before Answering (simplified) 02.png

Finally you should have something like this:

Announcement Before Answering (simplified) 04.png

Script

Please see the Download section for the most recent version of the voicemail script. The following commented version is reproduced here to demonstrate the idea, it may be outdated though.

<?xml version="1.0" encoding="utf-8" ?> <voicemail xmlns="http://www.innovaphone.com/xsd/voicemail6.xsd" _ver="--VER--">

 <function define="Main">
   <assign out="digitsdone" value="false"/>
   <event type="timer" name="guard">
     <assign out="digitsdone" value="true"/>
     <pbx-getcallinfo out-cgpn="$cgpn" out-cdpn="$cdpn" out-leg2="$leg2" />
     <dbg string="### timer-expired: " string2="$cdpn"/>
   </event>
   <event type="call-info" block="false">
     <dbg string="### call-info"/>
     <timer name="guard" sec="0"/>
     <timer name="guard" sec="4"/>
   </event>
   <timer name="guard" sec="4"/>
   <while notcond="$digitsdone">
     <wait sec="1"/>
     <dbg string="### wait"/>
   </while>
   <dbg string="### final called-party: " string2="$cdpn"/>
   <store-get root="" name="en_you_will_be_connected.g711a" out-url="$url"/>
   <pbx-prompt url="$url" barge-in="false"/>
   <pbx-xfer e164="$cdpn" out-cause="$cause" />
 </function>

</voicemail>

Known Problems

Related Articles

Download

Tools clipart.png FIXME: "download missing"