void unload_parking_manager(void) { ast_manager_unregister("Parkinglots"); ast_manager_unregister("ParkedCalls"); ast_manager_unregister("Park"); parking_manager_disable_stasis(); }
static void manager_bridging_shutdown(void) { ast_manager_unregister("BridgeList"); ast_manager_unregister("BridgeInfo"); ast_manager_unregister("BridgeDestroy"); ast_manager_unregister("BridgeKick"); }
static void astdb_shutdown(void) { ast_cli_unregister_multiple(cli_database, ARRAY_LEN(cli_database)); ast_manager_unregister("DBGet"); ast_manager_unregister("DBPut"); ast_manager_unregister("DBDel"); ast_manager_unregister("DBDelTree"); ast_mutex_lock(&dblock); doexit = 1; db_sync(); ast_mutex_unlock(&dblock); pthread_join(syncthread, NULL); #if defined(DEBUG_FD_LEAKS) && defined(close) /* DEBUG_FD_LEAKS causes conflicting define of close() in asterisk.h */ #undef close #endif if (astdb) { astdb->close(astdb); astdb = NULL; } }
static int unload_module(void) { ast_manager_unregister("MWIGet"); ast_manager_unregister("MWIDelete"); ast_manager_unregister("MWIUpdate"); return 0; }
int unload_module(void) { ast_unregister_application("Monitor"); ast_unregister_application("StopMonitor"); ast_unregister_application("ChangeMonitor"); ast_manager_unregister("Monitor"); ast_manager_unregister("StopMonitor"); ast_manager_unregister("ChangeMonitor"); return 0; }
static void manager_bridging_cleanup(void) { stasis_forward_cancel(topic_forwarder); topic_forwarder = NULL; ast_manager_unregister("BridgeList"); ast_manager_unregister("BridgeInfo"); ast_manager_unregister("BridgeDestroy"); ast_manager_unregister("BridgeKick"); }
/*! * \internal * \brief Shutdown the local proxy channel. * \since 12.0.0 * * \return Nothing */ static void local_shutdown(void) { struct local_pvt *p; struct ao2_iterator it; /* First, take us out of the channel loop */ ast_cli_unregister_multiple(cli_local, ARRAY_LEN(cli_local)); ast_manager_unregister("LocalOptimizeAway"); ast_channel_unregister(&local_tech); it = ao2_iterator_init(locals, 0); while ((p = ao2_iterator_next(&it))) { if (p->base.owner) { ast_softhangup(p->base.owner, AST_SOFTHANGUP_APPUNLOAD); } ao2_ref(p, -1); } ao2_iterator_destroy(&it); ao2_ref(locals, -1); locals = NULL; ao2_cleanup(local_tech.capabilities); local_tech.capabilities = NULL; STASIS_MESSAGE_TYPE_CLEANUP(ast_local_optimization_begin_type); STASIS_MESSAGE_TYPE_CLEANUP(ast_local_optimization_end_type); STASIS_MESSAGE_TYPE_CLEANUP(ast_local_bridge_type); }
static int unload_module(void) { ast_custom_function_unregister(&mute_function); /* Unregister AMI actions */ ast_manager_unregister("MuteAudio"); return 0; }
static int unload_module(void) { ast_manager_unregister("PJSIPNotify"); ast_cli_unregister_multiple(cli_options, ARRAY_LEN(cli_options)); aco_info_destroy(¬ify_cfg); return 0; }
static int ami_show_registrations(struct mansession *s, const struct message *m) { int count = 0; struct ast_sip_ami ami = { .s = s, .m = m, .arg = &count, .action_id = astman_get_header(m, "ActionID"), }; astman_send_listack(s, m, "Following are Events for each Inbound " "registration", "start"); ami_registrations_endpoints(&ami); astman_send_list_complete_start(s, m, "InboundRegistrationDetailComplete", count); astman_send_list_complete_end(s); return 0; } #define AMI_SHOW_REGISTRATIONS "PJSIPShowRegistrationsInbound" static pjsip_module registrar_module = { .name = { "Registrar", 9 }, .id = -1, .priority = PJSIP_MOD_PRIORITY_APPLICATION, .on_rx_request = registrar_on_rx_request, }; static int load_module(void) { const pj_str_t STR_REGISTER = { "REGISTER", 8 }; CHECK_PJSIP_MODULE_LOADED(); if (!(serializers = ao2_container_alloc( SERIALIZER_BUCKETS, serializer_hash, serializer_cmp))) { return AST_MODULE_LOAD_DECLINE; } if (ast_sip_register_service(®istrar_module)) { return AST_MODULE_LOAD_DECLINE; } if (pjsip_endpt_add_capability(ast_sip_get_pjsip_endpoint(), NULL, PJSIP_H_ALLOW, NULL, 1, &STR_REGISTER) != PJ_SUCCESS) { ast_sip_unregister_service(®istrar_module); return AST_MODULE_LOAD_DECLINE; } ast_manager_register_xml(AMI_SHOW_REGISTRATIONS, EVENT_FLAG_SYSTEM, ami_show_registrations); return AST_MODULE_LOAD_SUCCESS; } static int unload_module(void) { ast_manager_unregister(AMI_SHOW_REGISTRATIONS); ast_sip_unregister_service(®istrar_module); ao2_cleanup(serializers); return 0; }
void ast_res_pjsip_cleanup_options_handling(void) { ast_cli_unregister_multiple(cli_options, ARRAY_LEN(cli_options)); ast_manager_unregister("PJSIPQualify"); internal_sip_unregister_endpoint_formatter(&contact_status_formatter); pjsip_endpt_unregister_module(ast_sip_get_pjsip_endpoint(), &options_module); ao2_cleanup(sched_qualifies); sched_qualifies = NULL; }
int ast_sip_destroy_sorcery_auth(void) { ast_cli_unregister_multiple(cli_commands, ARRAY_LEN(cli_commands)); ast_sip_unregister_cli_formatter(cli_formatter); ast_sip_unregister_endpoint_formatter(&endpoint_auth_formatter); ast_manager_unregister("PJSIPShowAuths"); return 0; }
static int unload_module(void *mod) { int res; res = ast_unregister_application(app); res |= ast_manager_unregister("PlayDTMF"); STANDARD_HANGUP_LOCALUSERS; return res; }
static int unload_module(void) { int res; res = ast_unregister_application(app); res |= ast_manager_unregister("PlayDTMF"); ast_module_user_hangup_all(); return res; }
static int unload_module(void *mod) { int res; res = ast_unregister_application(setcdruserfield_app); res |= ast_unregister_application(appendcdruserfield_app); res |= ast_manager_unregister("SetCDRUserField"); STANDARD_HANGUP_LOCALUSERS; return res; }
/*! * \internal * \brief Clean up resources on Asterisk shutdown */ static void astdb_atexit(void) { ast_cli_unregister_multiple(cli_database, ARRAY_LEN(cli_database)); ast_manager_unregister("DBGet"); ast_manager_unregister("DBPut"); ast_manager_unregister("DBDel"); ast_manager_unregister("DBDelTree"); /* Set doexit to 1 to kill thread. db_sync must be called with * mutex held. */ doexit = 1; ast_mutex_lock(&dblock); db_sync(); ast_mutex_unlock(&dblock); pthread_join(syncthread, NULL); ast_mutex_lock(&dblock); clean_statements(); if (sqlite3_close(astdb) == SQLITE_OK) { astdb = NULL; } ast_mutex_unlock(&dblock); }
/*! * \internal * \brief Shutdown the local proxy channel. * \since 12.0.0 * * \return Nothing */ static void local_shutdown(void) { /* First, take us out of the channel loop */ ast_cli_unregister_multiple(cli_local, ARRAY_LEN(cli_local)); ast_manager_unregister("LocalOptimizeAway"); ast_channel_unregister(&local_tech); ao2_ref(locals, -1); locals = NULL; ao2_cleanup(local_tech.capabilities); local_tech.capabilities = NULL; STASIS_MESSAGE_TYPE_CLEANUP(ast_local_optimization_begin_type); STASIS_MESSAGE_TYPE_CLEANUP(ast_local_optimization_end_type); STASIS_MESSAGE_TYPE_CLEANUP(ast_local_bridge_type); }