Wed Oct 28 15:49:28 2009

Asterisk developer's documentation


ast_channel_tech Struct Reference

#include <channel.h>

Collaboration diagram for ast_channel_tech:

Collaboration graph
[legend]

Data Fields

int(*const answer )(struct ast_channel *chan)
enum ast_bridge_result(*const bridge )(struct ast_channel *c0, struct ast_channel *c1, int flags, struct ast_frame **fo, struct ast_channel **rc, int timeoutms)
struct ast_channel *(*const bridged_channel )(struct ast_channel *chan, struct ast_channel *bridge)
int(*const call )(struct ast_channel *chan, char *addr, int timeout)
int capabilities
const char *const description
int(*const devicestate )(void *data)
struct ast_frame *(*const exception )(struct ast_channel *chan)
int(*const fixup )(struct ast_channel *oldchan, struct ast_channel *newchan)
int(*const hangup )(struct ast_channel *chan)
int(*const indicate )(struct ast_channel *c, int condition)
int properties
int(*const queryoption )(struct ast_channel *chan, int option, void *data, int *datalen)
struct ast_frame *(*const read )(struct ast_channel *chan)
struct ast_channel *(*const requester )(const char *type, int format, void *data, int *cause)
int(*const send_digit )(struct ast_channel *chan, char digit)
int(*const send_html )(struct ast_channel *chan, int subclass, const char *data, int len)
int(*const send_image )(struct ast_channel *chan, struct ast_frame *frame)
int(*const send_text )(struct ast_channel *chan, const char *text)
int(*const setoption )(struct ast_channel *chan, int option, void *data, int datalen)
int(*const transfer )(struct ast_channel *chan, const char *newdest)
const char *const type
int(*const write )(struct ast_channel *chan, struct ast_frame *frame)
int(*const write_video )(struct ast_channel *chan, struct ast_frame *frame)

Detailed Description

Structure to describe a channel "technology", ie a channel driver See If you develop your own channel driver, this is where you tell the PBX at registration of your driver what properties this driver supports and where different callbacks are implemented.

Definition at line 174 of file channel.h.


Field Documentation

int(* const answer)(struct ast_channel *chan)

Answer the channel

Referenced by ast_answer().

enum ast_bridge_result(* const bridge)(struct ast_channel *c0, struct ast_channel *c1, int flags, struct ast_frame **fo, struct ast_channel **rc, int timeoutms)

Bridge two channels of the same type together

Referenced by ast_channel_bridge().

struct ast_channel*(* const bridged_channel)(struct ast_channel *chan, struct ast_channel *bridge) [read]

Find bridged channel

Referenced by ast_bridged_channel().

int(* const call)(struct ast_channel *chan, char *addr, int timeout)

Call a given phone number (address, etc), but don't take longer than timeout seconds to do so.

Referenced by ast_call().

Bitmap of formats this channel can handle

Definition at line 179 of file channel.h.

Referenced by ast_request(), and load_module().

const char* const description

Definition at line 176 of file channel.h.

Referenced by ast_channel_register(), description(), and show_channeltypes().

int(* const devicestate)(void *data)

Devicestate call back

Referenced by ast_device_state(), and show_channeltypes().

struct ast_frame*(* const exception)(struct ast_channel *chan) [read]

Handle an exception, reading a frame

Referenced by ast_read().

int(* const fixup)(struct ast_channel *oldchan, struct ast_channel *newchan)

Fix up a channel: If a channel is consumed, this is called. Basically update any ->owner links

Referenced by ast_do_masquerade().

int(* const hangup)(struct ast_channel *chan)

Hangup (and possibly destroy) the channel

Referenced by ast_do_masquerade(), and ast_hangup().

int(* const indicate)(struct ast_channel *c, int condition)

Indicate a particular condition (e.g. AST_CONTROL_BUSY or AST_CONTROL_RINGING or AST_CONTROL_CONGESTION

Referenced by agent_indicate(), ast_indicate(), and show_channeltypes().

Technology Properties

Definition at line 182 of file channel.h.

Referenced by schedule_delivery().

int(* const queryoption)(struct ast_channel *chan, int option, void *data, int *datalen)

Query a given option

struct ast_frame*(* const read)(struct ast_channel *chan) [read]

Read a frame, in standard format (see frame.h)

Referenced by ast_read(), and sound_thread().

struct ast_channel*(* const requester)(const char *type, int format, void *data, int *cause) [read]

Requester - to set up call data structures (pvt's)

Referenced by ast_request().

int(* const send_digit)(struct ast_channel *chan, char digit)

Send a literal DTMF digit

Referenced by agent_digit(), and do_senddigit().

int(* const send_html)(struct ast_channel *chan, int subclass, const char *data, int len)

int(* const send_image)(struct ast_channel *chan, struct ast_frame *frame)

Display or send an image

Referenced by ast_send_image(), and ast_supports_images().

int(* const send_text)(struct ast_channel *chan, const char *text)

Display or transmit text

Referenced by ast_sendtext(), ast_write(), and sendtext_exec().

int(* const setoption)(struct ast_channel *chan, int option, void *data, int datalen)

Set a given option

Referenced by ast_channel_setoption().

int(* const transfer)(struct ast_channel *chan, const char *newdest)

Blind transfer other side (see app_transfer.c and ast_transfer()

Referenced by ast_transfer(), show_channeltypes(), and transfer_exec().

const char* const type

int(* const write)(struct ast_channel *chan, struct ast_frame *frame)

Write a frame, in standard format (see frame.h)

Referenced by ast_write().

int(* const write_video)(struct ast_channel *chan, struct ast_frame *frame)

Write a frame, in standard format

Referenced by ast_write(), and ast_write_video().


The documentation for this struct was generated from the following file:

Generated on Wed Oct 28 15:49:28 2009 for Asterisk - the Open Source PBX by  doxygen 1.5.6