Sat Mar 24 23:51:55 2007

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)
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)
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)
ast_frame *(*const read )(struct ast_channel *chan)
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

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

struct ast_channel*(* const bridged_channel)(struct ast_channel *chan, struct ast_channel *bridge)

Find 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.

int capabilities

Bitmap of formats this channel can handle

Definition at line 179 of file channel.h.

int(* const devicestate)(void *data)

Devicestate call back

struct ast_frame*(* const exception)(struct ast_channel *chan)

Handle an exception, reading a frame

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

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

Hangup (and possibly destroy) the channel

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

int properties

Technology Properties

Definition at line 182 of file channel.h.

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 a frame, in standard format (see frame.h)

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

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

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

Send a literal DTMF digit

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

Send HTML data

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

Display or send an image

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

Display or transmit text

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

Set a given option

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

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

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

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

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

Write a frame, in standard format


The documentation for this struct was generated from the following file:
Generated on Sat Mar 24 23:51:55 2007 for Asterisk - the Open Source PBX by  doxygen 1.5.1