
This is true for all modules, regardless of the exported interfaces.SWITCH_MODULE_DEFINITION(mod_dummy, mod_dummy_shutdown, mod_dummy_run, mod_dummy_load).SWITCH_MODULE_LOAD_FUNCTION(mod_dummy_load).SWITCH_MODULE_RUNTIME_FUNCTION(mod_dummy_run).SWITCH_MODULE_SHUTDOWN_FUNCTION(mod_dummy_shutdown).Module loading and registering relies on gcc constructor-destructor attributes.Call ast_unregister_application in unload_module().Your app_exec function will be called if the app is called from the dial plan.Call ast_register_application_xml() on in load_module() to register app_exec.AST_MODULE_INFO_STANDARD(ASTERISK_GPL_KEY, “Desc”).Define static int load_module() and static int unload_module().static int app_exec(struct ast_channel *c, const char *data).More interfaces defined in src/include/switch_module_interfaces.h.API (switch_api_interface_t -> no exact match).Application (switch_application_interface_t -> ast_app).Files (switch_file_interface_t -> ast_format).Codec (switch_codec_interface_t -> ast_translator).Endpoints (switch_endpoint_interface_t -> ast_channel_tech).You must register your interfaces on module load.The core loads the shared object on startup or on demand.You allocate memory from the process heap directly.The initial leg thread is re-used for the outgoing leg.struct ast_chan is the call structure.You allocate memory using the session memory pool.Each session has its own state machine thread.switch_core_session_t is the call structure.call switch_core_session_thread_launch() ISDN: SETUP (new thread) mod_openzap State machine routing state execute state Bridge Application switch_ivr_originate() ISDN: CONNECT (new thread) loop Handling state changes State machine Media Exchange loop Handling state changes.FreeSWITCH making a call bridge between SIP and PRI.call ast_pbx_start() (new thread) PBX core ISDN: SETUP chan_zap ast_request -> ast_call() loop nf calls Dial() application ast_waitfor() ISDN: CONNECT ast_bridge_call() ast_channel_bridge() Media Exchange PBX core.

#Freeswitch install module software
Moises Silva Software Developer Sangoma Technologies


FreeSWITCH modules forAsterisk developers.
