VoiceGuide IVR Software Main Page
Jump to content

Voice Files As Attachement In Email

Recommended Posts

Hello Support,

 

I configure the system to send me a message which a caller left in a mailbox.

Instead of getting 1 email, the system is sending me 2 emails. The emails are the same.

How can I stop this?

 

How can I configure this to send a message and exit ?

 

 

'Script : vmLm.vgs

'Module : VmLmMenu

 

iLineId = $RV_DEVICEID

sPathSysVoice = "$RV[PathSysVoice]"

sPathDataVm = "$RV[PathDataVm]"

sVmMsgCurr_Path = "$RV[PathDataVm]VmSave\"

sVmbId = "$RV[VmbId]"

sVmLmRec = "$RV[VmLmRec]"

 

set VG = CreateObject("VoiceGuide.CommandLink")

set Fso = CreateObject("Scripting.FileSystemObject")

 

'---+----1----+----2----+----3----+----4----+----5----+----6----+----7----+----8----+----9----+----0

 

select case "$RV_LastKeyPress"

case "$RV[Key_VmLmStopRecAndPlay]" '{1}

'Stop recording and play the recorded message

VG.Script_Goto iLineId, "", "VmLmRecPlay", ""

 

case "$RV[Key_VmLmDelRecRecAgain]" '{2}

'Delete the recorded message and start recording again

on error resume next

DeleteFile sVmLmRec

VG.Script_Goto iLineId, "", "VmLmStart", "[VmLmRec]{}" 'clear the name of the last recorded message

 

case "$RV[Key_VmLmSaveAndPlayGreeting]" '{3}

'Save the recorded message and play the greeting message for this voicemail box again

ProcessRecordedVmMsg iLineId, sVmbId, sVmLmRec

VG.Script_Goto iLineId, "", "VmLmStart", "[VmLmRec]{}" 'clear the name of the last recorded message

 

case "$RV[Key_VmLmDeleteGoGroupPrevious]" '{4}

'Delete the recorded message and group browse to the previous voicemail box

'and play it's greeting message

'todo

on error resume next

DeleteFile sVmLmRec

VG.Script_Goto iLineId, "", "VmLmStart", "[VmLmRec]{}" 'clear the name of the last recorded message

 

case "$RV[Key_VmLmDeleteAndPlayGreeting]" '{5}

'Delete the recorded message and play the greeting message for this voicemail box again

on error resume next

DeleteFile sVmLmRec

VG.Script_Goto iLineId, "", "VmLmStart", "[VmLmRec]{}" 'clear the name of the last recorded message

 

case "$RV[Key_VmLmDeleteGoGroupNext]" '{6}

'Delete the recorded message and group browse to the next voicemail box

'and play it's greeting message

'todo

on error resume next

DeleteFile sVmLmRec

VG.Script_Goto iLineId, "", "VmLmStart", "[VmLmRec]{}" 'clear the name of the last recorded message

 

case "$RV[Key_VmLmSaveGoVmLogin]" '{8}

'Save the recorded message and go to Voicemail Login Menu

ProcessRecordedVmMsg iLineId, sVmbId, sVmLmRec

VG.Script_Goto iLineId, "vmLogin.vgs", "VmLoginStart", "[VmLmRec]{}" 'clear the name of the last recorded message

 

case "$RV[Key_VmLmSaveVmExit]" '{0}

'Save the recorded message and exit the voicemail system

'return to wherever the return path was defined to.

ProcessRecordedVmMsg iLineId, sVmbId, sVmLmRec

VG.Script_Return iLineId, "[VmLmRec]{}" 'clear the name of the last recorded message

 

case "$RV[Key_VmLmSaveGoLmRecMsgMenu]" '{#}

'Stop recording and play the menu which speaks the options listed above

VG.Script_Goto iLineId, "", "VmLmMenuPlay", ""

 

case "timeout"

'only happens here after the "Max Rec Length" announcement is played

VG.Script_Goto iLineId, "", "VmLmMenuPlay", ""

 

case else

'unknown - just play the menu then...

VG.Script_Goto iLineId, "", "VmLmMenuPlay", ""

 

end select

 

Set VG = Nothing

set Fso = Nothing

 

 

sub ProcessRecordedVmMsg(iLineId, sVmbId, sVmLmRec)

if sVmLmRec = "" then

exit sub

end if

if (FileMoreThenMinLength(sVmbId, sVmLmRec)) then

VG.Vm_Event iLineId, "FORWARD", sVmbId, sVmLmRec, "", ""

else

VG.Admin_TraceLogAdd iLineId, 2, "vm msg too short, deleting: " & sVmLmRec

DeleteFile sVmLmRec

end if

end sub

 

function FileMoreThenMinLength(sVmbId, sFilename)

if "$RV[VmLmRec_RecLen100ms]" = "" then

'[VmLmRec_RecLen100ms] not set...

VG.Admin_TraceLogAdd iLineId, 1, "vm RV[VmLmRec_RecLen100ms] not set."

FileMoreThenMinLength = True

exit function

end if

on error resume next

iRecLen100ms = Clng($RV[VmLmRec_RecLen100ms])

iFileLength = iRecLen100ms / 10

iMinLength = Cint(VG.Vm_VmbConfig_Get(sVmbId, "MsgLenMin"))

if iMinLength = "" then

'min length undefined - return true

FileMoreThenMinLength = True

exit function

end if

on error resume next

if iFileLength >= iMinLength then

FileMoreThenMinLength = True

else

VG.Admin_TraceLogAdd iLineId, 2, "vm SoundFileLength=" & iFileLength & ", MsgLenMin=" & iMinLength

FileMoreThenMinLength = False

end if

end function

 

sub DeleteFile(sFname)

'starts a VBScript which is designed to make repeated attempts to delete the file.

on error resume next

Set ws = CreateObject("WScript.Shell")

ws.run "wscript ""$RV[PathVgSys]vm\vm_deletefile.vbs"" """ & sFname & """", 0

Set ws = Nothing

end sub

 

 

 

 

Regards

Share this post


Link to post

Did you modify the vmLm.vgs script?

 

Setting the forwarding email can be done from the Voicemail Configuration Manager application. You can specify the forwarding email addresses to be associated with each voicemail box and VoiceGuide will read the email addresses from that config file and send the emails.

 

If you made changes to the vmLm.vgs script then you should restore the original scripts and just use the currently built-in email sending mechanism.

 

If you are using the original vmLm.vgs files and are still having 2 emails sent then double check the settings for that voicemail box. eg. Is it forwarding recordings to other voicemail boxes?

Share this post


Link to post

>>Did you modify the vmLm.vgs script?

 

No, I can't remember if I did. I don't think so.

I did a research and I find out that:

 

When you press 1, the system is replaying the message

When you press 2, the system is recording the message again

When you press 3, the system is saving the message

 

BUT:

after the system recorded the message the system is going back to a point to record a message.

If you hang up, the system is still recording the message and the message will be send to your mail.

 

 

>>If you are using the original vmLm.vgs files and are still having 2 emails sent then double check the settings for that voicemail box. eg. Is it forwarding recordings to other voicemail boxes?

 

I am using the original vmlm.vgs file and I am still having 2 emails.

The system also sends 2 emails to an other email address which I specified.

 

I can be wrong, but I think that the second email which the system is sending is the one that is still recording after you hang up the telephone.

 

Question:

 

1) How can this problem fixed?

 

 

Regards

Share this post


Link to post

Could you please post a copy of VoiceGuide's Trace Logs which capture the call, this will allow us to see what happened.

 

Enable logging by setting the log levels to 10 in VG.INI as per below:

[Log]

 

VoiceGuide=10

NumberLoader=0

VoicemailManager=0

EmailSender=10

Then restart VG and make a test call which demonstrates the problem.

 

Trace files will be created in VG's \log\ subdirectory.

 

Please post the traces and the VoiceGuide script used.

 

When posting traces/scripts please .ZIP them up and post them as attachments.

Share this post


Link to post

Trace shows voicemail message recording was stopped by the key # being pressed:

 

170555.33 8 dtmf # (66390,35,2)

 

and the voicemail scripts then went onto [VmLmMenuPlay] module which plays RecMsgMenu.wav file:

 

170555.55 8 state [VmLmMenuPlay] Playing

...

170555.59 8 PlaySoundStart ok [C:\Program Files\VoiceGuide\system\voice\RecMsgMenu.wav]

 

The key 3 is then pressed :

 

170603.03 8 dtmf 3 (66390,51,2)

 

Which results in the voicemail system/scripts "Saving the recorded message and play the greeting message for this voicemail box again" - as per the specifications. See: http://www.voiceguide.com/vghelp/html/voicemailMenus.htm

 

So the recorded voicemail message gets forwarded:

 

170603.27 8 vm frwrd vmb 0001 email to 107@tocmail.com (wav attached)

 

And the voicemail system plays the welcoming message for the voicemil box 0001 again and then again starts recording:

 

170606.80 8 state [VmLmRec] Recording

 

Once that recording completes the new recorded message then gets forwarded as well:

 

170609.23 8 vm frwrd vmb 0001 email to 107@tocmail.com (wav attached)

 

If you looked at the emails received you would see that the two emails have different sound files attached to them...

 

So in summary, the system is sending two emails as caller has selected to record two messages...

 

If caller has not pressed the 3 key then it looks like the telephony device you are using has mistakenly detected the "3" while playing the RecMsgMenu.wav sound file...

 

(As a temporary solution for false detections you could try re-recording the RecMsgMenu.wav sound file.)

Share this post


Link to post

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×