Skip to content

Instantly share code, notes, and snippets.

@umanda
Last active March 22, 2019 04:34
Show Gist options
  • Save umanda/ac09f61d3d6e9f3147ec7a4b0f7d9be5 to your computer and use it in GitHub Desktop.
Save umanda/ac09f61d3d6e9f3147ec7a4b0f7d9be5 to your computer and use it in GitHub Desktop.
Freeswitch Programming with mod_perl Functions and classes. Useful commands that may help get a list of functions and classes from mod_perl source files
*setGlobalVariable
*getGlobalVariable
*consoleLog
*consoleLog2
*consoleCleanLog
*running
*email
*console_log
*console_log2
*console_clean_log
*msleep
*bridge
*hanguphook
*dtmf_callback
############# Class : freeswitch::IVRMenu ##############
*bindAction
*execute
############# Class : freeswitch::API ##############
*execute
*executeString
*getTime
############# Class : freeswitch::input_callback_state_t ##############
*swig_function_get
*swig_function_set
*swig_threadState_get
*swig_threadState_set
*swig_extra_get
*swig_extra_set
*swig_funcargs_get
*swig_funcargs_set
############# Class : freeswitch::DTMF ##############
*swig_digit_get
*swig_digit_set
*swig_duration_get
*swig_duration_set
############# Class : freeswitch::Stream ##############
*read
*write
*raw_write
*get_data
############# Class : freeswitch::Event ##############
*swig_event_get
*swig_event_set
*swig_serialized_string_get
*swig_serialized_string_set
*swig_mine_get
*swig_mine_set
*chat_execute
*chat_send
*serialize
*setPriority
*getHeader
*getBody
*getType
*addBody
*addHeader
*delHeader
*fire
############# Class : freeswitch::EventConsumer ##############
*swig_events_get
*swig_events_set
*swig_e_event_id_get
*swig_e_event_id_set
*swig_e_callback_get
*swig_e_callback_set
*swig_e_subclass_name_get
*swig_e_subclass_name_set
*swig_e_cb_arg_get
*swig_e_cb_arg_set
*swig_enodes_get
*swig_enodes_set
*swig_node_index_get
*swig_node_index_set
*bind
*pop
*cleanup
############# Class : freeswitch::CoreSession ##############
*swig_session_get
*swig_session_set
*swig_channel_get
*swig_channel_set
*swig_flags_get
*swig_flags_set
*swig_allocated_get
*swig_allocated_set
*swig_cb_state_get
*swig_cb_state_set
*swig_hook_state_get
*swig_hook_state_set
*swig_cause_get
*swig_cause_set
*swig_uuid_get
*swig_uuid_set
*swig_tts_name_get
*swig_tts_name_set
*swig_voice_name_get
*swig_voice_name_set
*insertFile
*answer
*print
*preAnswer
*hangup
*hangupState
*setVariable
*setPrivate
*getPrivate
*getVariable
*process_callback_result
*say
*sayPhrase
*hangupCause
*getState
*recordFile
*originate
*destroy
*setDTMFCallback
*speak
*set_tts_parms
*set_tts_params
*collectDigits
*getDigits
*transfer
*read
*detectSpeech
*playAndGetDigits
*playAndDetectSpeech
*streamFile
*sleep
*flushEvents
*flushDigits
*setAutoHangup
*setHangupHook
*ready
*bridged
*answered
*mediaReady
*waitForAnswer
*execute
*sendEvent
*setEventData
*getXMLCDR
*begin_allow_threads
*end_allow_threads
*get_uuid
*get_cb_args
*check_hangup_hook
*run_dtmf_callback
*consoleLog
*consoleLog2
############# Class : freeswitch::Session ##############
*destroy
*begin_allow_threads
*end_allow_threads
*check_hangup_hook
*run_dtmf_callback
*setME
*setInputCallback
*unsetInputCallback
*setHangupHook
*ready
*swig_callback_mutex_get
*swig_callback_mutex_set
*swig_destroying_get
*swig_destroying_set
*swig_event_idx_get
*swig_event_idx_set
*swig_suuid_get
*swig_suuid_set
*swig_cb_function_get
*swig_cb_function_set
*swig_cb_arg_get
*swig_cb_arg_set
*swig_hangup_func_str_get
*swig_hangup_func_str_set
*swig_hangup_func_arg_get
*swig_hangup_func_arg_set
*setPERL
*S_HUP
*S_FREE
*S_RDLOCK
Usage: setGlobalVariable(var_name,var_val);
Usage: getGlobalVariable(var_name);
Usage: consoleLog(level_str,msg);
Usage: consoleLog2(level_str,file,func,line,msg);
Usage: consoleCleanLog(msg);
Usage: running();
Usage: email(to,from,headers,body,file,convert_cmd,convert_ext);
Usage: new_IVRMenu(main,name,greeting_sound,short_greeting_sound,invalid_sound,exit_sound,transfer_sound,confirm_macro,confirm_key,tts_engine,tts_voice,confirm_attempts,inter_timeout,digit_len,timeout,max_failures,max_timeouts);
Usage: delete_IVRMenu(self);
Usage: IVRMenu_bindAction(self,action,arg,bind);
Usage: IVRMenu_execute(self,session,name);
Usage: new_API(s);
Usage: delete_API(self);
Usage: API_execute(self,command,data);
Usage: API_executeString(self,command);
Usage: API_getTime(self);
Usage: input_callback_state_t_function_set(self,function);
Usage: input_callback_state_t_function_get(self);
Usage: input_callback_state_t_threadState_set(self,threadState);
Usage: input_callback_state_t_threadState_get(self);
Usage: input_callback_state_t_extra_set(self,extra);
Usage: input_callback_state_t_extra_get(self);
Usage: input_callback_state_t_funcargs_set(self,funcargs);
Usage: input_callback_state_t_funcargs_get(self);
Usage: new_input_callback_state_t();
Usage: delete_input_callback_state_t(self);
Usage: DTMF_digit_set(self,digit);
Usage: DTMF_digit_get(self);
Usage: DTMF_duration_set(self,duration);
Usage: DTMF_duration_get(self);
Usage: new_DTMF(idigit,iduration);
Usage: delete_DTMF(self);
Usage: new_Stream();
Usage: new_Stream(switch_stream_handle_t *);
Usage: delete_Stream(self);
Usage: Stream_read(self,len);
Usage: Stream_write(self,data);
Usage: Stream_raw_write(self,data,len);
Usage: Stream_get_data(self);
Usage: Event_event_set(self,event);
Usage: Event_event_get(self);
Usage: Event_serialized_string_set(self,serialized_string);
Usage: Event_serialized_string_get(self);
Usage: Event_mine_set(self,mine);
Usage: Event_mine_get(self);
Usage: new_Event(type,subclass_name);
Usage: new_Event(wrap_me,free_me);
Usage: delete_Event(self);
Usage: Event_chat_execute(self,app,data);
Usage: Event_chat_send(self,dest_proto);
Usage: Event_serialize(self,format);
Usage: Event_setPriority(self,priority);
Usage: Event_getHeader(self,header_name);
Usage: Event_getBody(self);
Usage: Event_getType(self);
Usage: Event_addBody(self,value);
Usage: Event_addHeader(self,header_name,value);
Usage: Event_delHeader(self,header_name);
Usage: Event_fire(self);
Usage: EventConsumer_events_set(self,events);
Usage: EventConsumer_events_get(self);
Usage: EventConsumer_e_event_id_set(self,e_event_id);
Usage: EventConsumer_e_event_id_get(self);
Usage: EventConsumer_e_callback_set(self,e_callback);
Usage: EventConsumer_e_callback_get(self);
Usage: EventConsumer_e_subclass_name_set(self,e_subclass_name);
Usage: EventConsumer_e_subclass_name_get(self);
Usage: EventConsumer_e_cb_arg_set(self,e_cb_arg);
Usage: EventConsumer_e_cb_arg_get(self);
Usage: EventConsumer_enodes_set(self,enodes);
Usage: EventConsumer_enodes_get(self);
Usage: EventConsumer_node_index_set(self,node_index);
Usage: EventConsumer_node_index_get(self);
Usage: new_EventConsumer(event_name,subclass_name,len);
Usage: delete_EventConsumer(self);
Usage: EventConsumer_bind(self,event_name,subclass_name);
Usage: EventConsumer_pop(self,block,timeout);
Usage: EventConsumer_cleanup(self);
Usage: delete_CoreSession(self);
Usage: CoreSession_session_set(self,session);
Usage: CoreSession_session_get(self);
Usage: CoreSession_channel_set(self,channel);
Usage: CoreSession_channel_get(self);
Usage: CoreSession_flags_set(self,flags);
Usage: CoreSession_flags_get(self);
Usage: CoreSession_allocated_set(self,allocated);
Usage: CoreSession_allocated_get(self);
Usage: CoreSession_cb_state_set(self,cb_state);
Usage: CoreSession_cb_state_get(self);
Usage: CoreSession_hook_state_set(self,hook_state);
Usage: CoreSession_hook_state_get(self);
Usage: CoreSession_cause_set(self,cause);
Usage: CoreSession_cause_get(self);
Usage: CoreSession_uuid_set(self,uuid);
Usage: CoreSession_uuid_get(self);
Usage: CoreSession_tts_name_set(self,tts_name);
Usage: CoreSession_tts_name_get(self);
Usage: CoreSession_voice_name_set(self,voice_name);
Usage: CoreSession_voice_name_get(self);
Usage: CoreSession_insertFile(self,file,insert_file,sample_point);
Usage: CoreSession_answer(self);
Usage: CoreSession_print(self,txt);
Usage: CoreSession_preAnswer(self);
Usage: CoreSession_hangup(self,cause);
Usage: CoreSession_hangupState(self);
Usage: CoreSession_setVariable(self,var,val);
Usage: CoreSession_setPrivate(self,var,val);
Usage: CoreSession_getPrivate(self,var);
Usage: CoreSession_getVariable(self,var);
Usage: CoreSession_process_callback_result(self,result);
Usage: CoreSession_say(self,tosay,module_name,say_type,say_method,say_gender);
Usage: CoreSession_sayPhrase(self,phrase_name,phrase_data,phrase_lang);
Usage: CoreSession_hangupCause(self);
Usage: CoreSession_getState(self);
Usage: CoreSession_recordFile(self,file_name,time_limit,silence_threshold,silence_hits);
Usage: CoreSession_originate(self,a_leg_session,dest,timeout,handlers);
Usage: CoreSession_destroy(self);
Usage: CoreSession_setDTMFCallback(self,cbfunc,funcargs);
Usage: CoreSession_speak(self,text);
Usage: CoreSession_set_tts_parms(self,tts_name,voice_name);
Usage: CoreSession_set_tts_params(self,tts_name,voice_name);
Usage: CoreSession_collectDigits(self,abs_timeout);
Usage: CoreSession_collectDigits(self,digit_timeout,abs_timeout);
Usage: CoreSession_getDigits(self,maxdigits,terminators,timeout);
Usage: CoreSession_getDigits(self,maxdigits,terminators,timeout,interdigit);
Usage: CoreSession_getDigits(self,maxdigits,terminators,timeout,interdigit,abstimeout);
Usage: CoreSession_transfer(self,extension,dialplan,context);
Usage: CoreSession_read(self,min_digits,max_digits,prompt_audio_file,timeout,valid_terminators,digit_timeout);
Usage: CoreSession_detectSpeech(self,arg0,arg1,arg2,arg3);
Usage: CoreSession_playAndGetDigits(self,min_digits,max_digits,max_tries,timeout,terminators,audio_files,bad_input_audio_files,digits_regex,var_name,digit_timeout,transfer_on_failure);
Usage: CoreSession_playAndDetectSpeech(self,file,engine,grammar);
Usage: CoreSession_streamFile(self,file,starting_sample_count);
Usage: CoreSession_sleep(self,ms,sync);
Usage: CoreSession_flushEvents(self);
Usage: CoreSession_flushDigits(self);
Usage: CoreSession_setAutoHangup(self,val);
Usage: CoreSession_setHangupHook(self,hangup_func);
Usage: CoreSession_ready(self);
Usage: CoreSession_bridged(self);
Usage: CoreSession_answered(self);
Usage: CoreSession_mediaReady(self);
Usage: CoreSession_waitForAnswer(self,calling_session);
Usage: CoreSession_execute(self,app,data);
Usage: CoreSession_sendEvent(self,sendME);
Usage: CoreSession_setEventData(self,e);
Usage: CoreSession_getXMLCDR(self);
Usage: CoreSession_begin_allow_threads(self);
Usage: CoreSession_end_allow_threads(self);
Usage: CoreSession_get_uuid(self);
Usage: CoreSession_get_cb_args(self);
Usage: CoreSession_check_hangup_hook(self);
Usage: CoreSession_run_dtmf_callback(self,input,itype);
Usage: CoreSession_consoleLog(self,level_str,msg);
Usage: CoreSession_consoleLog2(self,level_str,file,func,line,msg);
Usage: console_log(level_str,msg);
Usage: console_log2(level_str,file,func,line,msg);
Usage: console_clean_log(msg);
Usage: msleep(ms);
Usage: bridge(session_a,session_b);
Usage: hanguphook(session);
Usage: dtmf_callback(session,input,itype,buf,buflen);
Usage: new_Session();
Usage: new_Session(uuid,a_leg);
Usage: new_Session(uuid);
Usage: new_Session(session);
Usage: delete_Session(self);
Usage: Session_destroy(self);
Usage: Session_begin_allow_threads(self);
Usage: Session_end_allow_threads(self);
Usage: Session_check_hangup_hook(self);
Usage: Session_run_dtmf_callback(self,input,itype);
Usage: Session_setME(self,p);
Usage: Session_setInputCallback(self,cbfunc,funcargs);
Usage: Session_setInputCallback(self,cbfunc);
Usage: Session_setInputCallback(self);
Usage: Session_unsetInputCallback(self);
Usage: Session_setHangupHook(self,func,arg);
Usage: Session_setHangupHook(self,func);
Usage: Session_ready(self);
Usage: Session_callback_mutex_set(self,callback_mutex);
Usage: Session_callback_mutex_get(self);
Usage: Session_destroying_set(self,destroying);
Usage: Session_destroying_get(self);
Usage: Session_event_idx_set(self,event_idx);
Usage: Session_event_idx_get(self);
Usage: Session_suuid_set(self,suuid);
Usage: Session_suuid_get(self);
Usage: Session_cb_function_set(self,cb_function);
Usage: Session_cb_function_get(self);
Usage: Session_cb_arg_set(self,cb_arg);
Usage: Session_cb_arg_get(self);
Usage: Session_hangup_func_str_set(self,hangup_func_str);
Usage: Session_hangup_func_str_get(self);
Usage: Session_hangup_func_arg_set(self,hangup_func_arg);
Usage: Session_hangup_func_arg_get(self);
Usage: Session_setPERL(self,pi);
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment