Howto:Voicemail message duration

From innovaphone wiki
Revision as of 14:16, 25 August 2020 by D.giordano (talk | contribs) (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...)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search

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 following code must be added to the original email.xml just after the statement:

<store-getstat root="" name="$vm" out-size="$size" out-error="$error"/>
<!-- #### start custom code #### -->
<!-- try to calculate message duration in seconds -->
<!-- pass the size in byte -->
<switch var="$size">
  <case less-equal="40000">
    <!-- if a message is less than 40Kb the message is probably less than 5 seconds -->
    <assign out="$message_duration" value="message duration less than 5 seconds "/>
  </case>
  <case less-equal="64000">
    <!-- if a message is less than 64Kb the message is maximum 8 seconds -->
    <assign out="$message_duration" value="message duration of 5 - 8 seconds "/>
  </case>
  <case less-equal="80000">
    <!-- if a message is less than 80Kb the message is maximum 10 seconds -->
    <assign out="$message_duration" value="message duration of 8 - 10 seconds "/>
  </case>
  <case less-equal="96000">
    <!-- if a message is less than 96Kb the message is maximum 12 seconds -->
    <assign out="$message_duration" value="message duration of 10 - 12 seconds "/>				
  </case>
  <case less-equal="120000">
    <!-- if a message is less than 120Kb the message is maximum 15 seconds --> 
    <assign out="$message_duration" value="message duration of 12 - 15 seconds "/>				
  </case>
  <case greater="120000">
    <!-- if a message is greater than 120Kb the message is more than 15 seconds -->
    <assign out="$message_duration" value="message duration greater than 15 seconds "/>
  </case>
</switch>
<!-- #### end custom code #### -->


System Requirements

Installation

Configuration

Known Problems