[Freeswitch-users] mod_vmd--can it do more than simply find VoiceMail Beeping?

Ken Rice krice at freeswitch.org
Tue Apr 7 00:19:21 PDT 2009


Matt,

No that¹s all mod_vmd does...

If you want to do a more advanced analysis of media stream coming from the
client mod_amd is available under a commercial license. This does media
analysis to determine machine vs humans based on a hand full of metrics that
are tunable. Contact me off list for licensing details

Ken Rice
krice at freeswitch.org


From: Matthew Fong <mattdfong at gmail.com>
Reply-To: <freeswitch-users at lists.freeswitch.org>
Date: Tue, 7 Apr 2009 13:52:54 +0700
To: <freeswitch-users at lists.freeswitch.org>
Subject: [Freeswitch-users] mod_vmd--can it do more than simply find
VoiceMail Beeping?

I'm doing some outbound dialing, and want to use mod_vmd to detect if a live
person picks up or a voicemail picks up. I've read the wiki, and have been
playing around with the dialplan implementation and the lua implementation,
along with capturing the mod_vmd
vmd::beep event.

Using the examples on the wiki, I am able to call a number, sleep for 25
seconds, and mod_vmd usually detects a Beep (the answering machine beep
right before you are to speak your message).

My question is, is there a way to use mod_vmd to detect if an answering
machine or human has picked up within the first 1-2 seconds after being
answered? If so, can I get an example of how to set this up?

my dialplan to test my lua implementation looks like

  <!-- mod_vmd test extension (new mod)--> <extension name="vmdtest">
<condition field="destination_number" expression="^1986$"> <action
application="answer"/> <action application="lua" data="matt_vmd.lua"/>
<action application="hangup"/> </condition> </extension>

and matt_vmd.lua looks like

print ("--matt_vmd.lua START--") local human_detected = false; local
voicemail_detected = false; function onInput(session, type, obj) if type ==
"dtmf" and obj['digit'] == '1' and human_detected == false then
print('MATT--I detected a HUMAN'); human_detected = true; return "break";
end  if type == "event" and voicemail_detected == false then print('MATT--I
detected a VOICEMAIL'); voicemail_detected = true; return "break"; end end
session:setInputCallback("onInput"); session:execute("vmd");
session:sleep(25000); print ("--matt_vmd.lua FINISHED--")


Thanks.

--matt



_______________________________________________
Freeswitch-users mailing list
Freeswitch-users at lists.freeswitch.org
http://lists.freeswitch.org/mailman/listinfo/freeswitch-users
UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users
http://www.freeswitch.org

-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.freeswitch.org/pipermail/freeswitch-users/attachments/20090407/f00f0808/attachment-0002.html 


More information about the FreeSWITCH-users mailing list