Asterisk - The Open Source Telephony Project  21.4.1
Files | Functions
Dial plan applications

Applications support the dialplan. They register dynamically with. More...

Files

file  app_adsiprog.c
 Program Asterisk ADSI Scripts into phone.
 
file  app_alarmreceiver.c
 Central Station Alarm receiver for Ademco Contact ID.
 
file  app_amd.c
 Answering machine detection.
 
file  app_attended_transfer.c
 Attended transfer by caller channel.
 
file  app_audiosocket.c
 AudioSocket application – transmit and receive audio through a TCP socket.
 
file  app_authenticate.c
 Execute arbitrary authenticate commands.
 
file  app_blind_transfer.c
 Blind transfer by caller channel.
 
file  app_bridgeaddchan.c
 Application to place the channel into an existing Bridge.
 
file  app_bridgewait.c
 Application to place the channel into a holding Bridge.
 
file  app_broadcast.c
 Channel audio broadcasting.
 
file  app_cdr.c
 Applications connected with CDR engine.
 
file  app_celgenuserevent.c
 Generate User-Defined CEL event.
 
file  app_chanisavail.c
 Check if Channel is Available.
 
file  app_channelredirect.c
 ChannelRedirect application.
 
file  app_chanspy.c
 ChanSpy: Listen in on any channel.
 
file  app_confbridge.c
 Conference Bridge application.
 
file  app_controlplayback.c
 Trivial application to control playback of a sound file.
 
file  app_db.c
 Database access functions.
 
file  app_dial.c
 dial() & retrydial() - Trivial application to dial a channel and send an URL on answer
 
file  app_dictate.c
 Virtual Dictation Machine Application For Asterisk.
 
file  app_directed_pickup.c
 Directed Call Pickup Support.
 
file  app_directory.c
 Provide a directory of extensions.
 
file  app_disa.c
 DISA – Direct Inward System Access Application.
 
file  app_dumpchan.c
 Application to dump channel variables.
 
file  app_echo.c
 Echo application – play back what you hear to evaluate latency.
 
file  app_exec.c
 Exec application.
 
file  app_externalivr.c
 External IVR application interface.
 
file  app_festival.c
 Connect to festival.
 
file  app_flash.c
 App to flash a DAHDI trunk.
 
file  app_followme.c
 Find-Me Follow-Me application.
 
file  app_forkcdr.c
 Fork CDR application.
 
file  app_getcpeid.c
 Get ADSI CPE ID.
 
file  app_if.c
 If Branch Implementation.
 
file  app_ivrdemo.c
 IVR Demo application.
 
file  app_jack.c
 Jack Application.
 
file  app_meetme.c
 Meet me conference bridge.
 
file  app_mf.c
 MF sender and receiver applications.
 
file  app_milliwatt.c
 Digital Milliwatt Test.
 
file  app_minivm.c
 MiniVoiceMail - A Minimal Voicemail System for Asterisk.
 
file  app_mixmonitor.c
 MixMonitor() - Record a call and mix the audio during the recording.
 
file  app_morsecode.c
 Morsecode application.
 
file  app_mp3.c
 Silly application to play an MP3 file – uses mpg123.
 
file  app_originate.c
 Originate application.
 
file  app_page.c
 page() - Paging application
 
file  app_playback.c
 Trivial application to playback a sound file.
 
file  app_playtones.c
 Playtones application.
 
file  app_privacy.c
 Block all calls without Caller*ID, require phone # to be entered.
 
file  app_queue.c
 True call queues with optional send URL on answer.
 
file  app_read.c
 Trivial application to read a variable.
 
file  app_readexten.c
 Trivial application to read an extension into a variable.
 
file  app_record.c
 Trivial application to record a sound file.
 
file  app_reload.c
 Reload Asterisk modules.
 
file  app_saycounted.c
 Applications to decline words according to current language.
 
file  app_sayunixtime.c
 SayUnixTime application.
 
file  app_senddtmf.c
 App to send DTMF digits.
 
file  app_sendtext.c
 App to transmit a text message.
 
file  app_sf.c
 SF sender and receiver applications.
 
file  app_signal.c
 Channel signaling applications.
 
file  app_skel.c
 Skeleton application.
 
file  app_sla.c
 Shared Line Appearances.
 
file  app_sms.c
 SMS application - ETSI ES 201 912 protocol 1 implementation.
 
file  app_softhangup.c
 SoftHangup application.
 
file  app_speech_utils.c
 Speech Recognition Utility Applications.
 
file  app_stack.c
 Stack applications Gosub, Return, etc.
 
file  app_system.c
 Execute arbitrary system commands.
 
file  app_talkdetect.c
 Playback a file with audio detect.
 
file  app_test.c
 Applications to test connection and produce report in text file.
 
file  app_transfer.c
 Transfer a caller.
 
file  app_userevent.c
 UserEvent application – send manager event.
 
file  app_verbose.c
 Verbose logging application.
 
file  app_voicemail.c
 Comedian Mail - Voicemail System.
 
file  app_waitforcond.c
 Sleep until a condition is true.
 
file  app_waitforring.c
 Wait for Ring Application.
 
file  app_waitforsilence.c
 Wait for Silence.
 
file  app_waituntil.c
 Sleep until the given epoch.
 
file  app_while.c
 While Loop Implementation.
 
file  app_zapateller.c
 Playback the special information tone to get rid of telemarketers.
 
file  conf_state.c
 Confbridge state handling.
 
file  conf_state_empty.c
 Confbridge state handling for the EMPTY state.
 
file  conf_state_inactive.c
 Confbridge state handling for the INACTIVE state.
 
file  conf_state_multi.c
 Confbridge state handling for the MULTI state.
 
file  conf_state_multi_marked.c
 Confbridge state handling for the MULTI_MARKED state.
 
file  conf_state_single.c
 Confbridge state handling for the SINGLE state.
 
file  conf_state_single_marked.c
 Confbridge state handling for the SINGLE_MARKED state.
 
 
file  res_fax.c
 Generic FAX Resource for FAX technology resource modules.
 
file  res_format_attr_h263.c
 H.263 Format Attribute Module.
 
file  res_format_attr_h264.c
 H.264 Format Attribute Module.
 
file  res_realtime.c
 RealTime CLI.
 

Functions

static int iax2_prov_app (struct ast_channel *chan, const char *data)
 
int indicate_busy (struct ast_channel *chan, const char *data)
 
int indicate_congestion (struct ast_channel *chan, const char *data)
 
static int pbx_builtin_answer (struct ast_channel *chan, const char *data)
 
static int pbx_builtin_background (struct ast_channel *chan, const char *data)
 
static int pbx_builtin_execiftime (struct ast_channel *chan, const char *data)
 
static int pbx_builtin_goto (struct ast_channel *chan, const char *data)
 
static int pbx_builtin_gotoiftime (struct ast_channel *chan, const char *data)
 
static int pbx_builtin_hangup (struct ast_channel *chan, const char *data)
 
static int pbx_builtin_proceeding (struct ast_channel *chan, const char *data)
 
static int pbx_builtin_progress (struct ast_channel *chan, const char *data)
 
static int pbx_builtin_ringing (struct ast_channel *chan, const char *data)
 
static int pbx_builtin_wait (struct ast_channel *chan, const char *data)
 
static int pbx_builtin_waitdigit (struct ast_channel *chan, const char *data)
 
static int pbx_builtin_waitexten (struct ast_channel *chan, const char *data)
 

Detailed Description

Applications support the dialplan. They register dynamically with.

Asterisk Dial Plan Applications

See also
ast_register_application() and unregister with
ast_unregister_application()
See also

Function Documentation

static int iax2_prov_app ( struct ast_channel chan,
const char *  data 
)
static

iax2provision

Definition at line 12417 of file chan_iax2.c.

References ast_sockaddr_isnull(), ast_sockaddr_stringify(), and ast_strdupa.

Referenced by load_module().

12418 {
12419  int res;
12420  char *sdata;
12421  char *opts;
12422  int force =0;
12423  unsigned short callno = PTR_TO_CALLNO(ast_channel_tech_pvt(chan));
12424  if (ast_strlen_zero(data))
12425  data = "default";
12426  sdata = ast_strdupa(data);
12427  opts = strchr(sdata, '|');
12428  if (opts)
12429  *opts='\0';
12430 
12431  if (ast_channel_tech(chan) != &iax2_tech) {
12432  ast_log(LOG_NOTICE, "Can't provision a non-IAX device!\n");
12433  return -1;
12434  }
12435  if (!callno || !iaxs[callno] || ast_sockaddr_isnull(&iaxs[callno]->addr)) {
12436  ast_log(LOG_NOTICE, "Can't provision something with no IP?\n");
12437  return -1;
12438  }
12439  res = iax2_provision(&iaxs[callno]->addr, iaxs[callno]->sockfd, NULL, sdata, force);
12440  ast_verb(3, "Provisioned IAXY at '%s' with '%s'= %d\n",
12441  ast_sockaddr_stringify(&iaxs[callno]->addr),
12442  sdata, res);
12443  return res;
12444 }
static int ast_sockaddr_isnull(const struct ast_sockaddr *addr)
Checks if the ast_sockaddr is null. "null" in this sense essentially means uninitialized, or having a 0 length.
Definition: netsock2.h:127
#define ast_strdupa(s)
duplicate a string in memory from the stack
Definition: astmm.h:298
Structure to describe a channel "technology", ie a channel driver See for examples: ...
Definition: channel.h:628
static struct chan_iax2_pvt * iaxs[IAX_MAX_CALLS]
an array of iax2 pvt structures
Definition: chan_iax2.c:1173
static char * ast_sockaddr_stringify(const struct ast_sockaddr *addr)
Wrapper around ast_sockaddr_stringify_fmt() with default format.
Definition: netsock2.h:256
int indicate_congestion ( struct ast_channel ,
const char *   
)

pbx_builtins.c functions needed by pbx.c

Definition at line 775 of file pbx_builtins.c.

References AST_CONTROL_CONGESTION, ast_indicate(), ast_setstate(), AST_STATE_BUSY, and AST_STATE_UP.

Referenced by __ast_pbx_run().

776 {
778  /* Don't change state of an UP channel, just indicate
779  congestion in audio */
780  ast_channel_lock(chan);
781  if (ast_channel_state(chan) != AST_STATE_UP) {
782  ast_channel_hangupcause_set(chan, AST_CAUSE_CONGESTION);
784  }
785  ast_channel_unlock(chan);
786  wait_for_hangup(chan, data);
787  return -1;
788 }
int ast_indicate(struct ast_channel *chan, int condition)
Indicates condition of channel.
Definition: channel.c:4277
ast_channel_state
ast_channel states
Definition: channelstate.h:35
int ast_setstate(struct ast_channel *chan, enum ast_channel_state)
Change the state of a channel.
Definition: channel.c:7386
static int pbx_builtin_goto ( struct ast_channel chan,
const char *  data 
)
static

Goto

Definition at line 884 of file pbx_builtins.c.

References ast_parseable_goto().

885 {
886  int res = ast_parseable_goto(chan, data);
887  if (!res)
888  ast_verb(3, "Goto (%s,%s,%d)\n", ast_channel_context(chan), ast_channel_exten(chan), ast_channel_priority(chan) + 1);
889  return res;
890 }
int ast_parseable_goto(struct ast_channel *chan, const char *goto_string)
Definition: pbx.c:8866