Codename Pineapple

Home page | Mailing list | Docs

Last updated: Sat Feb 3 05:01:59 2007

Asterisk developer's documentation :: Codename Pineapple


ast_channel_tech Struct Reference

#include <channel.h>

Collaboration diagram for ast_channel_tech:

Collaboration graph
[legend]

Detailed Description

Structure to describe a channel "technology", ie a channel driver See for examples:.

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 228 of file channel.h.

Data Fields

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.
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
const char *const description
int(*const devicestate )(void *data)
enum ast_bridge_result(*const early_bridge )(struct ast_channel *c0, struct ast_channel *c1)
 Bridge two channels of the same type together (early).
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(* func_channel_read )(struct ast_channel *chan, const char *function, char *data, char *buf, size_t len)
 Provide additional read items for CHANNEL() dialplan function.
int(* func_channel_write )(struct ast_channel *chan, const char *function, char *data, const char *value)
 Provide additional write items for CHANNEL() dialplan function.
int(*const hangup )(struct ast_channel *chan)
 Hangup (and possibly destroy) the channel.
int(*const indicate )(struct ast_channel *c, int condition, const void *data, size_t datalen)
 Indicate a particular condition (e.g. AST_CONTROL_BUSY or AST_CONTROL_RINGING or AST_CONTROL_CONGESTION.
int properties
int(*const queryoption )(struct ast_channel *chan, int option, void *data, int *datalen)
 Query a given option.
ast_frame *(*const read )(struct ast_channel *chan)
 Read a frame, in standard format (see frame.h).
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_begin )(struct ast_channel *chan, char digit)
 Start sending a literal DTMF digit.
int(*const send_digit_end )(struct ast_channel *chan, char digit, unsigned int duration)
 Stop sending 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().
const char *const type
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.


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.

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

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().

int capabilities
 

Bitmap of formats this channel can handle

Definition at line 232 of file channel.h.

Referenced by ast_request(), load_module(), and show_channeltype().

const char* const description
 

Definition at line 230 of file channel.h.

Referenced by ast_channeltype_list(), and show_channeltypes().

int(* const devicestate)(void *data)
 

Devicestate call back

Referenced by ast_device_state(), show_channeltype(), and show_channeltypes().

enum ast_bridge_result(* const early_bridge)(struct ast_channel *c0, struct ast_channel *c1)
 

Bridge two channels of the same type together (early).

Referenced by ast_channel_early_bridge().

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

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.

int(* func_channel_read)(struct ast_channel *chan, const char *function, char *data, char *buf, size_t len)
 

Provide additional read items for CHANNEL() dialplan function.

int(* func_channel_write)(struct ast_channel *chan, const char *function, char *data, const char *value)
 

Provide additional write items for CHANNEL() dialplan function.

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

Hangup (and possibly destroy) the channel.

Referenced by ast_hangup().

int(* const indicate)(struct ast_channel *c, int condition, const void *data, size_t datalen)
 

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

Referenced by ast_indicate_data(), ast_write(), show_channeltype(), and show_channeltypes().

int properties
 

Technology Properties

Definition at line 234 of file channel.h.

Referenced by ast_jb_do_usecheck(), and 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 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)
 

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

Referenced by ast_request().

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

Start sending a literal DTMF digit.

Referenced by ast_channel_bridge(), ast_rtp_bridge(), ast_senddigit_begin(), and show_channeltype().

int(* const send_digit_end)(struct ast_channel *chan, char digit, unsigned int duration)
 

Stop sending a literal DTMF digit.

Referenced by ast_senddigit_end(), and show_channeltype().

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

Send HTML data.

Referenced by ast_channel_sendhtml(), ast_channel_supports_html(), ast_write(), and show_channeltype().

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

Display or send an image.

Referenced by ast_send_image(), ast_supports_images(), and show_channeltype().

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

Display or transmit text.

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

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_channeltype(), and show_channeltypes().

const char* const type
 

Definition at line 229 of file channel.h.

Referenced by agent_read(), ast_channel_register(), ast_channel_unregister(), ast_channeltype_list(), ast_get_channel_tech(), ast_request(), complete_channeltypes(), get_proto(), handle_request_invite(), handle_response_answer(), handle_response_invite(), handle_showchan(), load_module(), misdn_facility_exec(), misdn_set_opt_exec(), oss_read(), setup_env(), show_channeltype(), and show_channeltypes().

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:

Asterisk is a trademark for Digium, inc.. | Edvina.net | Asterisk.org | This documentation was generated with Doxygen