Sponsor: VoiceMeUp - Corporate & Wholesale VoIP Services

VoIP Mailing List Archives
Mailing list archives for the VoIP community
 SearchSearch 

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


 
Post new topic   Reply to topic    VoIP Mailing List Archives Forum Index -> freeSWITCH Users
View previous topic :: View next topic  
Author Message
mattdfong at gmail.com
Guest





PostPosted: Tue Apr 07, 2009 2:05 am    Post subject: [Freeswitch-users] mod_vmd--can it do more than simply find Reply with quote

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
Back to top
krice at freeswitch.org
Guest





PostPosted: Tue Apr 07, 2009 2:28 am    Post subject: [Freeswitch-users] mod_vmd--can it do more than simply find Reply with quote

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@freeswitch.org From: Matthew Fong <mattdfong@gmail.com> Reply-To: <freeswitch-users@lists.freeswitch.org> Date: Tue, 7 Apr 2009 13:52:54 +0700 To: <freeswitch-users@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@lists.freeswitch.org http://lists.freeswitch.org/mailman/listinfo/freeswitch-users UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users http://www.freeswitch.org
Back to top
dave at 3c.co.uk
Guest





PostPosted: Tue Apr 07, 2009 9:37 am    Post subject: [Freeswitch-users] mod_vmd--can it do more than simply find Reply with quote

On Tue, 2009-04-07 at 17:17 +1000, Jason White wrote:
Quote:
Matthew Fong <mattdfong@gmail.com> wrote:
Quote:
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?

Probably not. If you have an algorithm in mind that would achieve this with a
high degree of reliability, I'm sure the FreeSWITCH developers would be
interested in it. However, as far as I know, there is no reliable way to
distinguish, for example, my voice as recorded in a voicemail greeting from my
voice giving a live greeting after answering a phone call. Think about it.

The usual way is to measure how long the person who answers the phone
speaks for. A person might say "Hello?", "Hello, this is Alice",
"Thank you for calling XYZ. How may I direct your call?" Voicemail
will usually be longer - "Hi, this is Bob. I'm sorry I can't take
your call right now, so please leave me a message after the tone and
I'll get back to you as soon as I can."

In the first couple of cases above, this would give you an answer -
"human" - within the first few seconds of the call.

FreeSWITCH will give you TALK (start of speech (or noise)) and NOTALK
(end of) events if you enable VAD.

--Dave


_______________________________________________
Freeswitch-users mailing list
Freeswitch-users@lists.freeswitch.org
http://lists.freeswitch.org/mailman/listinfo/freeswitch-users
UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users
http://www.freeswitch.org
Back to top
brian at freeswitch.org
Guest





PostPosted: Tue Apr 07, 2009 10:01 am    Post subject: [Freeswitch-users] mod_vmd--can it do more than simply find Reply with quote

Or my personal favorite... Congestion tone!

/b

On Apr 7, 2009, at 9:25 AM, David Knell wrote:
Quote:
The usual way is to measure how long the person who answers the phone
speaks for. A person might say "Hello?", "Hello, this is Alice",
"Thank you for calling XYZ. How may I direct your call?" Voicemail
will usually be longer - "Hi, this is Bob. I'm sorry I can't take
your call right now, so please leave me a message after the tone and
I'll get back to you as soon as I can."


Brian West
brian@freeswitch.org (brian@freeswitch.org)



-- Meet us a ClueCon! http://www.cluecon.com
Back to top
Display posts from previous:   
Post new topic   Reply to topic    VoIP Mailing List Archives Forum Index -> freeSWITCH Users All times are GMT - 5 Hours
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum


Powered by phpBB © 2001, 2005 phpBB Group

VoiceMeUp - Corporate & Wholesale VoIP Services