Howto:A Simple Recording Solution On-Top of The innovaphone Voicemail
Applies To
This information applies to
- innovaphone PBX, V6,V7
- innovaphone Voicemail 07-60044 and later
- all innovaphone Phones V6 and V7
- innovaphone BRIA softphone
More Information
This article explains how a simple recording solution could be set up on-top of an innovaphone Voicemail (VM). In the second part you will find an enhanced version with clearer file names.
Please note, that this recording solution is exemplary and free. It can be adapted in such, that it doesn't require the VM. It(record.xml) does not require VM-licensing, at all.
The recording works on-demand an stores G.711a files into the "stored messages"-area of a user's voicebox. Recorded messages can be listened to by calling a user's voicebox and by proceeding into the main menu option 2 for stored messages.
Please be informed, that recording usually requires the agreement of the calling peer and as such must be indicated to the peer.
Configuration
The outline for the following configuration scenario shall be as follows:
- The VM is pre-installed on a CompactFlash card and is available at the number 66.
- The confgured URL for the VM is http://127.0.0.1/drive/CF0/vm/vm.xml.
- An IP phone 49:Klaus may exist.
- Klaus has a voicebox configured which is available at http://127.0.0.1/drive/CF0/vm/Klaus/
- The recording solution requires an additional voicemail object, which shall be available as 67:vm-record.
Open up a new file within a text editor.
- Paste the following content into it:
<?xml version="1.0" encoding="utf-8" ?>
<voicemail xmlns="http://www.innovaphone.com/xsd/voicemail6.xsd">
<function define="Main">
<pbx-getcallinfo out-cgpn="$cgpn" out-leg2="$leg2"/>
<pbx-finduser-e164 e164="$cgpn" out-cn="$cn" />
<if cond="$cn">
<if cond="$leg2">
<lib-strcat string="$cn" string2="/store" out-string="$sub" />
<store-getnew root="$sub" out-url="$ctrl"/>
<lib-strcat string="$ctrl" string2="-" out-string="$ctrl" />
<lib-strcat string="$ctrl" string2="$leg2" out-string="$ctrl" />
<lib-strcat string="$ctrl" string2=".g711a" out-string="$ctrl" />
</if>
<else>
<lib-strcat string="$cn" string2="/store" out-string="$sub" />
<store-getnew root="$sub" ext=".g711a" out-url="$ctrl"/>
</else>
<pbx-record url="$ctrl" barge-in="false"/>
</if>
<pbx-disc/>
</function>
</voicemail>
- Save the file as record.xml into the VM directory, such that record.xml resides in the same directory of the VM's vm.xml and becomes HTTP-available as http://127.0.0.1/drive/CF0/vm/record.xml.
Create a new Voicemail Object at Administration/PBX/Objects/New
- Enter vm-record as Long Name and Name.
- Enter 67 as Number
- Enter http://127.0.0.1/drive/CF0/vm/record.xml as URL.
Browse to the phone's Web UI: Configuration/RegistrationX/Recording
- As Mode enter manual.
- As Number enter 67.
Testing
Klaus is engaged in call.
- During the call press the redial-button. The phone's display should now indicate something like "Recording".
After the call has been finished Klaus calls his voicebox 6649. He enters main menu option 2. The recorded message should now be among the stored messages.
Enhanced version
You will fine the enhanced version here: Media:record04.zip Please note that this version requires at least innovaphone PBX V7. Of course you have to modify or the filename or the url. Using this version the name of the voice files has the following format:
<Record>+<cdpn>+<cgpn>+<date>+
Where
<Record> = fix text field <cdpn> = extension witch did the recording <cgpn> = the far partner <date> = system (PBX) date
Example: Record_37-24-01.08.2009-09.03_1.g711a
Extension 37 did voice recording, the far partner was extension 24, date 01.08.2009 at 09:03, the first record in this minute.
Please note that the date and time format will be always DD.MM.JJJJ and hh:mm. The file name of course must be unique, ant even if rare a user could start a second recording with the same far partner in the same minute (for example if he is toggling with the recording key). The XML will not provide seconds, and so the first record with same other data will have an increasing number.
Example:
Record_37-24-31.07.2009-13.58_1.g711a Record_37-24-31.07.2009-13.58_2.g711a Record_37-24-31.07.2009-13.58_3.g711a
Normally all records are ending with “_1”.
Please feel free to modify the xml, for example using other separators.
Known Problems
Related Articles
How to Configure the innovaphone Voicemail