Main Page | Alphabetical List | Data Structures | Directories | File List | Data Fields | Globals

ast_channel Struct Reference

Main Channel structure associated with a channel. More...

#include <channel.h>


Public Member Functions

 AST_LIST_HEAD (varshead, ast_var_t) varshead

Data Fields

char name [AST_CHANNEL_NAME]
char language [MAX_LANGUAGE]
char * type
int fds [AST_MAX_FDS]
char musicclass [MAX_LANGUAGE]
void * generatordata
ast_generatorgenerator
int writeinterrupt
ast_channelbridge
ast_channeldialed
ast_channeldialing
int reversedialed
ast_channelmasq
ast_channelmasqr
int cdrflags
int blocking
int _softhangup
int zombie
time_t whentohangup
pthread_t blocker
ast_mutex_t lock
const char * blockproc
char * appl
char * data
int exception
int fdno
sched_contextsched
int streamid
ast_filestreamstream
int vstreamid
ast_filestreamvstream
int oldwriteformat
int timingfd
int(* timingfunc )(void *data)
void * timingdata
int _state
int rings
int stack
int nativeformats
int readformat
int writeformat
char * dnid
char * callerid
char * ani
char * rdnis
int restrictcid
int callingpres
char context [AST_MAX_EXTENSION]
char macrocontext [AST_MAX_EXTENSION]
char macroexten [AST_MAX_EXTENSION]
int macropriority
char exten [AST_MAX_EXTENSION]
int priority
void * app [AST_CHANNEL_MAX_STACK]
char dtmfq [AST_MAX_EXTENSION]
int deferdtmf
ast_frame dtmff
ast_channel_pvtpvt
jmp_buf jmp [AST_CHANNEL_MAX_STACK]
ast_pbxpbx
int amaflags
char accountcode [20]
ast_cdrcdr
int adsicpe
char call_forward [AST_MAX_EXTENSION]
tone_zonezone
ast_channel_monitormonitor
unsigned long insmpl
unsigned long outsmpl
unsigned int fin
unsigned int fout
char uniqueid [AST_MAX_UNIQUEID]
int hangupcause
ast_var_tvars
unsigned int callgroup
unsigned int pickupgroup
int flag
ast_channelnext


Detailed Description

Main Channel structure associated with a channel.

This is the side of it mostly used by the pbx and call management.

Definition at line 64 of file channel.h.


Member Function Documentation

AST_LIST_HEAD varshead  ,
ast_var_t 
 


Field Documentation

int _softhangup
 

Whether or not we have been hung up... Do not set this value directly, use ast_softhangup

Definition at line 102 of file channel.h.

Referenced by ast_check_hangup(), and ast_do_masquerade().

int _state
 

State of line -- Don't write directly, use ast_setstate

Definition at line 142 of file channel.h.

Referenced by __ast_request_and_dial(), ast_async_goto(), ast_channel_alloc(), ast_do_masquerade(), ast_parse_device_state(), ast_pbx_outgoing_app(), ast_pbx_outgoing_exten(), ast_request(), and ast_setstate().

char accountcode[20]
 

Account code for billing

Definition at line 202 of file channel.h.

Referenced by ast_channel_alloc().

int adsicpe
 

Whether or not ADSI is detected on CPE

Definition at line 206 of file channel.h.

Referenced by ast_do_masquerade().

int amaflags
 

Set BEFORE PBX is started to determine AMA flags

Definition at line 200 of file channel.h.

Referenced by ast_channel_alloc().

char* ani
 

Malloc'd ANI

Definition at line 162 of file channel.h.

Referenced by ast_set_callerid().

void* app[AST_CHANNEL_MAX_STACK]
 

Application information -- see assigned numbers

Definition at line 184 of file channel.h.

char* appl
 

Current application

Definition at line 115 of file channel.h.

Referenced by ast_channel_alloc().

pthread_t blocker
 

If anyone is blocking, this is them

Definition at line 108 of file channel.h.

int blocking
 

Whether or not we're blocking

Definition at line 99 of file channel.h.

const char* blockproc
 

Procedure causing blocking

Definition at line 112 of file channel.h.

struct ast_channel* bridge
 

Who are we bridged to, if we're bridged

Definition at line 85 of file channel.h.

Referenced by ast_channel_bridge().

char call_forward[AST_MAX_EXTENSION]
 

Where to forward to if asked to dial on this interface

Definition at line 208 of file channel.h.

char* callerid
 

Malloc'd Caller ID

Definition at line 160 of file channel.h.

Referenced by __ast_request_and_dial(), ast_do_masquerade(), ast_request(), and ast_set_callerid().

unsigned int callgroup
 

Definition at line 234 of file channel.h.

int callingpres
 

Callerid presentation/screening

Definition at line 168 of file channel.h.

Referenced by __ast_request_and_dial().

struct ast_cdr* cdr
 

Call Detail Record

Definition at line 204 of file channel.h.

Referenced by __ast_request_and_dial().

int cdrflags
 

Call Detail Record Flags

Definition at line 97 of file channel.h.

char context[AST_MAX_EXTENSION]
 

Current extension context

Definition at line 172 of file channel.h.

Referenced by __ast_request_and_dial(), ast_async_goto(), ast_channel_alloc(), and ast_pbx_outgoing_exten().

char* data
 

Data passed to current application

Definition at line 117 of file channel.h.

Referenced by ast_channel_alloc().

int deferdtmf
 

Are DTMF digits being deferred

Definition at line 188 of file channel.h.

struct ast_channel* dialed
 

Who did we call?

Definition at line 87 of file channel.h.

struct ast_channel* dialing
 

Who called us?

Definition at line 89 of file channel.h.

char* dnid
 

Malloc'd Dialed Number Identifier

Definition at line 158 of file channel.h.

Referenced by ast_do_masquerade().

struct ast_frame dtmff
 

DTMF frame

Definition at line 190 of file channel.h.

char dtmfq[AST_MAX_EXTENSION]
 

Any/all queued DTMF characters

Definition at line 186 of file channel.h.

int exception
 

Has an exception been detected

Definition at line 120 of file channel.h.

Referenced by ast_do_masquerade(), and ast_waitfor_nandfds().

char exten[AST_MAX_EXTENSION]
 

Current extension number

Definition at line 180 of file channel.h.

Referenced by __ast_request_and_dial(), ast_async_goto(), ast_channel_alloc(), and ast_pbx_outgoing_exten().

int fdno
 

Which fd had an event detected on

Definition at line 122 of file channel.h.

Referenced by ast_do_masquerade(), and ast_waitfor_nandfds().

int fds[AST_MAX_FDS]
 

File descriptor for channel -- Drivers will poll on these file descriptors, so at least one must be non -1.

Definition at line 72 of file channel.h.

Referenced by ast_channel_alloc(), and ast_do_masquerade().

unsigned int fin
 

Definition at line 221 of file channel.h.

Referenced by ast_channel_alloc(), and ast_read().

int flag
 

channel flags of AST_FLAG_ type

Definition at line 238 of file channel.h.

unsigned int fout
 

Definition at line 222 of file channel.h.

Referenced by ast_channel_alloc().

struct ast_generator* generator
 

Current active data generator

Definition at line 80 of file channel.h.

Referenced by ast_activate_generator(), and ast_read().

void* generatordata
 

Current generator data if there is any

Definition at line 78 of file channel.h.

Referenced by ast_read().

int hangupcause
 

Definition at line 228 of file channel.h.

Referenced by __ast_request_and_dial().

unsigned long insmpl
 

Track the read/written samples for monitor use

Definition at line 217 of file channel.h.

jmp_buf jmp[AST_CHANNEL_MAX_STACK]
 

Jump buffer used for returning from applications

Definition at line 196 of file channel.h.

char language[MAX_LANGUAGE]
 

Language requested

Definition at line 68 of file channel.h.

Referenced by ast_channel_alloc(), and ast_do_masquerade().

ast_mutex_t lock
 

Lock, can be used to lock a channel for some operations

Definition at line 110 of file channel.h.

Referenced by ast_async_goto(), ast_async_goto_by_name(), ast_channel_alloc(), ast_channel_walk_locked(), ast_do_masquerade(), ast_get_channel_by_name_locked(), ast_get_channel_by_uniqueid_locked(), and ast_parse_device_state().

char macrocontext[AST_MAX_EXTENSION]
 

Current non-macro context

Definition at line 174 of file channel.h.

char macroexten[AST_MAX_EXTENSION]
 

Current non-macro extension

Definition at line 176 of file channel.h.

int macropriority
 

Current non-macro priority

Definition at line 178 of file channel.h.

struct ast_channel* masq
 

Channel that will masquerade as us

Definition at line 93 of file channel.h.

struct ast_channel* masqr
 

Who we are masquerading as

Definition at line 95 of file channel.h.

Referenced by ast_do_masquerade().

struct ast_channel_monitor* monitor
 

Definition at line 214 of file channel.h.

Referenced by ast_channel_free().

char musicclass[MAX_LANGUAGE]
 

Default music class

Definition at line 75 of file channel.h.

Referenced by ast_do_masquerade().

char name[AST_CHANNEL_NAME]
 

ASCII Description of channel name

Definition at line 66 of file channel.h.

Referenced by ast_async_goto(), ast_async_goto_by_name(), ast_channel_alloc(), ast_channel_bridge(), ast_channel_walk_locked(), ast_do_masquerade(), ast_get_channel_by_name_locked(), ast_parse_device_state(), ast_pbx_outgoing_app(), ast_pbx_outgoing_exten(), ast_pbx_run_app(), and ast_request().

int nativeformats
 

Kinds of data this channel can natively handle

Definition at line 150 of file channel.h.

Referenced by ast_channel_bridge(), and ast_do_masquerade().

struct ast_channel* next
 

For easy linking

Definition at line 241 of file channel.h.

Referenced by ast_active_channels(), ast_begin_shutdown(), ast_channel_alloc(), ast_channel_free(), and ast_channel_walk_locked().

int oldwriteformat
 

Original writer format

Definition at line 134 of file channel.h.

unsigned long outsmpl
 

Definition at line 218 of file channel.h.

struct ast_pbx* pbx
 

Definition at line 198 of file channel.h.

unsigned int pickupgroup
 

Definition at line 235 of file channel.h.

int priority
 

Definition at line 182 of file channel.h.

Referenced by __ast_request_and_dial(), ast_async_goto(), ast_channel_alloc(), and ast_pbx_outgoing_exten().

struct ast_channel_pvt* pvt
 

Private channel implementation details

Definition at line 192 of file channel.h.

Referenced by ast_channel_alloc(), ast_channel_setoption(), and ast_do_masquerade().

char* rdnis
 

Malloc'd RDNIS

Definition at line 164 of file channel.h.

int readformat
 

Requested read format

Definition at line 152 of file channel.h.

Referenced by ast_async_goto().

int restrictcid
 

Hide callerid from user

Definition at line 166 of file channel.h.

int reversedialed
 

Reverse the dialed link (0 false, 1 true)

Definition at line 91 of file channel.h.

int rings
 

Number of rings so far

Definition at line 144 of file channel.h.

struct sched_context* sched
 

Schedule context

Definition at line 124 of file channel.h.

Referenced by ast_channel_alloc().

int stack
 

Current level of application

Definition at line 146 of file channel.h.

Referenced by ast_channel_alloc().

struct ast_filestream* stream
 

Stream itself.

Definition at line 128 of file channel.h.

Referenced by ast_closestream().

int streamid
 

For streaming playback, the schedule ID

Definition at line 126 of file channel.h.

Referenced by ast_channel_alloc(), and ast_closestream().

void* timingdata
 

Definition at line 139 of file channel.h.

int timingfd
 

Timing fd

Definition at line 137 of file channel.h.

Referenced by ast_channel_alloc(), and ast_do_masquerade().

int(* timingfunc)(void *data)
 

Referenced by ast_read().

char* type
 

Type of channel

Definition at line 70 of file channel.h.

Referenced by ast_do_masquerade().

char uniqueid[AST_MAX_UNIQUEID]
 

Definition at line 225 of file channel.h.

Referenced by ast_channel_alloc(), ast_do_masquerade(), ast_get_channel_by_uniqueid_locked(), and ast_request().

struct ast_var_t* vars
 

Definition at line 231 of file channel.h.

Referenced by ast_channel_alloc().

struct ast_filestream* vstream
 

Stream itself.

Definition at line 132 of file channel.h.

Referenced by ast_closestream().

int vstreamid
 

For streaming playback, the schedule ID

Definition at line 130 of file channel.h.

Referenced by ast_closestream().

time_t whentohangup
 

Non-zero, set to actual time when channel is to be hung up

Definition at line 106 of file channel.h.

Referenced by ast_channel_setwhentohangup().

int writeformat
 

Requested write format

Definition at line 154 of file channel.h.

Referenced by ast_async_goto().

int writeinterrupt
 

Whether or not the generator should be interrupted by write

Definition at line 82 of file channel.h.

int zombie
 

Non-zero if this is a zombie channel

Definition at line 104 of file channel.h.

Referenced by ast_do_masquerade().

struct tone_zone* zone
 

Tone zone

Definition at line 211 of file channel.h.


The documentation for this struct was generated from the following file:
Generated on Wed Mar 16 20:08:39 2005 for Asterisk by  doxygen 1.4.0