What i need to do is listen on a session before, during and after the session is bridged with another call. I know built into FS is the option to listen for *x where x is 0-9 but i really need more than one digit. I traced the method that listens for the single digit to the command switch_core_event_hook_add_send_dtmf(session, meta_on_dtmf); in switch_ivr_async.c mod_managed also has the following in the native class freeswitch. public static switch_status_t switch_core_event_hook_add_recv_dtmf(SWIGTYPE_p_switch_core_session session, SWIGTYPE_p_f_p_switch_core_session_p_q_const__switch_dtmf_t_enum_switch_dtmf_direction_t__switch_status_t recv_dtmf) The problem is i can't work out how to use it. I am fine the the first param for the session but have no idea what i need for the SWIGTYPE_p_f_p_switch_core_session_p_q_const__switch_dtmf_t_enum_switch_dtmf_direction_t__switch_status_t recv_dtmf param. if anyone can point me in the right direction or knows a better way i would be grateful. Chris