Howto:Voicemail message duration: Difference between revisions

From innovaphone wiki
Jump to navigation Jump to search
(New page: ==Applies To== This information applies to PBX V11 or higher. <!-- Keywords: enter keywords, foreign translations and/or synoyms not appearing in the article here for better search resul...)
 
Line 12: Line 12:
===Problem Details===
===Problem Details===
The Voicemail XML documentation (available here https://www.innovaphone.com/xsd/vm.htm) doesn't provide any special command to get the message duration.
The Voicemail XML documentation (available here https://www.innovaphone.com/xsd/vm.htm) doesn't provide any special command to get the message duration.
Anyhow we have a command ables to provide the file size generated during the recording phase.
Anyhow we have a command ables to provide the file size generated during the recording phase.
The idea is calculate the duration based on the file size.
The idea is calculate the duration based on the file size.
The following code must be added to the original email.xml just after the statement:
 
The new code must be added to the original email.xml just after the statement:


<code xml>
<code xml>
<store-getstat root="" name="$vm" out-size="$size" out-error="$error"/>
<store-getstat root="" name="$vm" out-size="$size" out-error="$error"/>
</code>
</code>
Code to add:


<code xml>
<code xml>
Line 53: Line 58:
</code>
</code>


The information obtained can be inserted in the email body.
To add information in body append the code below to the previous one:
<code xml>
<!-- add custom body -->
<assign out="$body" value="$message_duration"/>
</code>
Now you must change the final "exec url" command to include the email body.
The original code can be identified from the comment
<code xml>
<!--Now send the email-->
...
<exec url="mailto:$to?from=$from&amp;subject=$subject&amp;subject=$cgpn&amp;srv=$server&amp;usr=$user&amp;pwd=$password&amp;file=$file" out-error="$exec-err"/>
</code>
The new one must contains the body=$body option as below:
<code xml>
<exec url="mailto:$to?from=$from&amp;body=$body&amp;subject=$subject&amp;subject=$cgpn&amp;srv=$server&amp;usr=$user&amp;pwd=$password&amp;file=$file" out-error="$exec-err"/>
</code>


===System Requirements===
===System Requirements===

Revision as of 14:30, 25 August 2020

Applies To

This information applies to

PBX V11 or higher.


More Information

The current email.xml file, used by the system to send emails, doesn't provide information about message duration. This information could be useful to identify easily the very short messages recorded by mistake.

Problem Details

The Voicemail XML documentation (available here https://www.innovaphone.com/xsd/vm.htm) doesn't provide any special command to get the message duration.

Anyhow we have a command ables to provide the file size generated during the recording phase.

The idea is calculate the duration based on the file size.

The new code must be added to the original email.xml just after the statement:

<store-getstat root="" name="$vm" out-size="$size" out-error="$error"/>

Code to add:

<switch var="$size">

 <case less-equal="40000">
   <assign out="$message_duration" value="message duration less than 5 seconds "/>
 </case>
 <case less-equal="64000">
   <assign out="$message_duration" value="message duration of 5 - 8 seconds "/>
 </case>
 <case less-equal="80000">
   <assign out="$message_duration" value="message duration of 8 - 10 seconds "/>
 </case>
 <case less-equal="96000">
   <assign out="$message_duration" value="message duration of 10 - 12 seconds "/>				
 </case>
 <case less-equal="120000">
   <assign out="$message_duration" value="message duration of 12 - 15 seconds "/>				
 </case>
 <case greater="120000">
   <assign out="$message_duration" value="message duration greater than 15 seconds "/>
 </case>

</switch>


The information obtained can be inserted in the email body.

To add information in body append the code below to the previous one:

<assign out="$body" value="$message_duration"/>

Now you must change the final "exec url" command to include the email body.

The original code can be identified from the comment

... <exec url="mailto:$to?from=$from&subject=$subject&subject=$cgpn&srv=$server&usr=$user&pwd=$password&file=$file" out-error="$exec-err"/>

The new one must contains the body=$body option as below:

<exec url="mailto:$to?from=$from&body=$body&subject=$subject&subject=$cgpn&srv=$server&usr=$user&pwd=$password&file=$file" out-error="$exec-err"/>

System Requirements

Installation

Configuration

Known Problems