[asterisk-dev] what happens after *(ast_channel_tech->call)() is called?

Moises Silva moises.silva at gmail.com
Sat Nov 8 00:00:54 CST 2008

That depends on who is calling ast_call(), which is the one calling
zt_call() when the technology is zapata (chan_zap, chan_dahdi).
ast_call is pretty much just a wrapper to call the technology call

In the case of app_dial.c (application responsible for handling
Dial()), after ast_call, the technology driver has placed a call to
whichever destiny was specified. Then, the caller (in this case
app_dial.c) will typically wait for a response by calling ast_waitfor
or ast_waitfor_n to poll over the descriptor of the channel, when the
channel has data, the app_dial calls ast_read() which ask in turn the
channel driver for an ast_frame structure, which can be of type
control, DTMF, video, voice (see enum ast_frame_type) and then will do
whatever wants to do with each frame, for example, upon reading a
control frame of type AST_CONTROL_RINGING, app_dial will call
ast_indicate() on the calling channel, so the other callee can be
notified that the placed call is in ringing state.

Take a look at app_dial.c for more hints.


On Fri, Nov 7, 2008 at 8:44 PM, Kelvin Chan <kelvinc at positronics.com> wrote:
> Hi list,
> I'm tracing out the call flow and wonders what happens after *(ast_channel_tech->call)() is called.
> Zaptel for example, what happends when zt_call() returns 0?
> Thanks.
> Kelvin Chan               | Positronics Ent.
> Product Development       |
>                          | unit 272
> 604-628-9330 (direct)     | 8128 128th St.
> 604-585-2119 at 104 (main)   | Surrey, BC
> 604-585-3056 (fax)        | Canada, V3W 1R1
> _______________________________________________
> --Bandwidth and Colocation Provided by http://www.api-digital.com--
> asterisk-dev mailing list
> To UNSUBSCRIBE or update options visit:
>   http://lists.digium.com/mailman/listinfo/asterisk-dev

"I do not agree with what you have to say, but I'll defend to the
death your right to say it." Voltaire

More information about the asterisk-dev mailing list