Mon Mar 31 07:38:16 2008

Asterisk developer's documentation


app_conference.c File Reference

#include "asterisk/autoconfig.h"
#include "app_conference.h"
#include "common.h"
#include "asterisk/module.h"

Include dependency graph for app_conference.c:

Go to the source code of this file.

Defines

#define AST_MODULE   "conference"

Functions

void add_milliseconds (struct timeval *tv, long ms)
int app_conference_main (struct ast_channel *chan, void *data)
 AST_MODULE_INFO_STANDARD (ASTERISK_GPL_KEY,"Conference")
const char * description ()
char * key ()
int load_module (void *mod)
int reload (void *mod)
int unload_module (void *mod)
long usecdiff (struct timeval *timeA, struct timeval *timeB)

Variables

static char * app = "Conference"
static char * descrip
static char * revision = "unknown"
static char * synopsis = "Channel Independent Conference"
static char * tdesc = "Channel Independent Conference Application"


Define Documentation

#define AST_MODULE   "conference"

Definition at line 179 of file app_conference.c.


Function Documentation

void add_milliseconds ( struct timeval *  tv,
long  ms 
)

Definition at line 157 of file app_conference.c.

References s.

00158 {
00159    // add the microseconds to the microseconds field
00160    tv->tv_usec += ( ms * 1000 ) ;
00161 
00162    // calculate the number of seconds to increment
00163    long s = ( tv->tv_usec / 1000000 ) ;
00164 
00165    // adjust the microsends field
00166    if ( s > 0 ) tv->tv_usec -= ( s * 1000000 ) ;
00167 
00168    // increment the seconds field
00169    tv->tv_sec += s ;
00170 
00171    return ;
00172 }

int app_conference_main ( struct ast_channel chan,
void *  data 
)

Definition at line 124 of file app_conference.c.

References ast_module_user_add, ast_module_user_remove, and ast_module_user::chan.

Referenced by load_module().

00125 {
00126    int res = 0 ;
00127    struct ast_module_user *u ;
00128    
00129    // defined in asterisk/module.h
00130    //LOCAL_USER_ADD( u ) ; 
00131    u = ast_module_user_add(chan);
00132 
00133    // call member thread function
00134    res = member_exec( chan, data ) ;
00135 
00136    // defined in asterisk/module.h
00137    //LOCAL_USER_REMOVE( u ) ;
00138    ast_module_user_remove (u);
00139 
00140    return res ;
00141 }

AST_MODULE_INFO_STANDARD ( ASTERISK_GPL_KEY  ,
"Conference"   
)

const char* description (  ) 

Definition at line 99 of file app_conference.c.

References tdesc.

00100 {
00101    return tdesc ;
00102 }

char* key (  ) 

Definition at line 113 of file app_conference.c.

References ASTERISK_GPL_KEY.

Referenced by __ast_check_signature(), __ast_check_signature_bin(), __ast_decrypt_bin(), __ast_encrypt_bin(), __ast_key_get(), __ast_sign(), __ast_sign_bin(), ast_db_del(), ast_db_deltree(), ast_db_get(), ast_db_gettree(), ast_db_put(), ast_privacy_check(), ast_privacy_set(), authenticate(), authenticate_verify(), cache_lookup(), check_access(), check_auth(), check_key(), create_addr(), crypto_load(), database_show(), database_showkey(), del_exec(), function_db_delete(), function_db_exists(), function_db_read(), function_db_write(), init_keys(), manager_dbget(), manager_dbput(), misdn_set_opt_exec(), process_returncode(), pw_cb(), register_verify(), reply_digest(), show_keys(), showkeys(), sort_internal(), try_load_key(), and update_key().

00114 {
00115    return ASTERISK_GPL_KEY ;
00116 }

int load_module ( void *  mod  ) 

Definition at line 86 of file app_conference.c.

References app, app_conference_main(), ast_log(), ast_register_application(), descrip, LOG_NOTICE, revision, and synopsis.

00087 {
00088    ast_log( LOG_NOTICE, "Loading app_conference module, revision=%s\n", revision) ;
00089 
00090    // intialize conference
00091    init_conference() ;
00092 
00093    // register conference cli functions
00094    register_conference_cli() ;
00095 
00096    return ast_register_application( app, app_conference_main, synopsis, descrip ) ;
00097 }

int reload ( void *  mod  ) 

Definition at line 174 of file app_conference.c.

00175 {
00176    return 0;   
00177 }

int unload_module ( void *  mod  ) 

Definition at line 73 of file app_conference.c.

References app, ast_log(), ast_module_user_hangup_all, ast_unregister_application(), and LOG_NOTICE.

00074 {
00075    ast_log( LOG_NOTICE, "unloading app_conference module\n" ) ;
00076 
00077    ast_module_user_hangup_all();
00078    //STANDARD_HANGUP_LOCALUSERS ; // defined in asterisk/module.h
00079 
00080    // register conference cli functions
00081    unregister_conference_cli() ;
00082 
00083    return ast_unregister_application( app ) ;
00084 }

long usecdiff ( struct timeval *  timeA,
struct timeval *  timeB 
)

Definition at line 148 of file app_conference.c.

00149 {
00150    long a_secs = timeA->tv_sec - timeB->tv_sec ;
00151    long b_secs = (long)( timeA->tv_usec / 1000 ) - (long)( timeB->tv_usec / 1000 ) ;
00152    long u_secs = ( a_secs * 1000 ) + b_secs ;
00153    return u_secs ;
00154 }


Variable Documentation

char* app = "Conference" [static]

Definition at line 56 of file app_conference.c.

char* descrip [static]

Initial value:

 "  Conference():  returns 0\n"
"if the user exits with the '#' key, or -1 if the user hangs up.\n"

Definition at line 58 of file app_conference.c.

char* revision = "unknown" [static]

Definition at line 65 of file app_conference.c.

Referenced by load_module().

char* synopsis = "Channel Independent Conference" [static]

Definition at line 57 of file app_conference.c.

char* tdesc = "Channel Independent Conference Application" [static]

Definition at line 55 of file app_conference.c.


Generated on Mon Mar 31 07:38:16 2008 for Asterisk - the Open Source PBX by  doxygen 1.5.1