Summary:ASTERISK-00218: [PATCH]Transfers for chan_h323
Reporter:miro (miro)Labels:
Date Opened:2003-09-04 11:30:36Date Closed:2008-01-15 14:33:57.000-0600
Versions:Frequency of
Environment:Attachments:( 0) transfer_h323.diff
Description:When making/receiving a call on ohphone or gnomemeeting, trying to transfer call crashes chan_h323 and *. I submit a patch that enable the feature to transfer a call.
For information, the h323 client (using openh323) need to be register to a gatrekeeper, in other way, it sends "ipĀ§*" string instead the one really send.


The patch submitted is the result of:
cvs diff channels/chan_h323.c channels/h323/ast_h323.cpp channels/h323/ast_h323.h channels/h323/chan_h323.h > transfer_h323.diff
Comments:By: jerjer (jerjer) 2003-09-06 15:38:14

I have merged (with changes) this diff into the cvs.  I have no way to test these changes, so I need someone to verify that this acutally works as expected.

Call transfer and forwarding were implemented with this diff.

For future reference make sure you use diff -u, please.

By: jerjer (jerjer) 2003-09-06 19:14:05

The call fowarding in this diff seems to be only half implemented.  Please fix.

By: miro (miro) 2003-09-07 16:45:14

More precision on "half implemented"?

By: jerjer (jerjer) 2003-09-07 17:05:53

It doesn't work.

By: miro (miro) 2003-09-07 17:30:24

Here is a test of a call maid from OSS to H323 (ohphone registred to a local gatekeeper... very important) and H323 is transfering the call to Echo.

exten => 4,1,Dial(H323/|10)
exten => 5,1,Dial(console/dsp|10)
exten => 6,1,Echo()

ohphone console:
Listening interfaces : ALL:1720
Searching for gatekeeper...
Gatekeeper found: OpenH323GK@totoro
Waiting for incoming calls for "miro"
Command ? Incoming call from "root []" at Mon, 08 Sep 2003 00:04:00 +0200, answer call (Y/n)? Y
Started logical channel: sending G.711-uLaw-64k{sw} <3>
Started logical channel: receiving G.711-uLaw-64k{sw} <3>
Call with "root []" established.
Accepting call.
Command ? T 6
Transferring call to  6
Command ? "root []" has cleared the call, duration  0:12

asterisk prompt:
Asterisk Ready.
*CLI> dial 4
   -- Executing Dial("OSS/dsp", "H323/|10") in new stack
   -- Called
   -- H323/ answered OSS/dsp
<< Console call has been answered >>
NOTICE[262161]: File chan_h323.c, Line 1131 (setup_transfer_call): Transfering call OSS/dsp to 6@interne.
 == Spawn extension (interne, 6, 0) exited non-zero on 'OSS/dsp'
   -- Executing Echo("OSS/dsp", "") in new stack
 == Spawn extension (interne, 6, 1) exited non-zero on 'OSS/dsp'
<< Hangup on console >>

By: jerjer (jerjer) 2003-09-07 17:51:27

That is call transfer.. I am talking about call forwarding, big difference.

By: miro (miro) 2003-09-08 06:00:07

True. Misunderstanding from my part. I was meaning only transfer and not forward.
This patch only transfer the call.
Forward is impossible for the moment since I can't handle the other end of the call before it's bridged.
If you want I implement this feature, "AppDial" part of app_dial.c has to be changed and there must be a way to get the other end of the call.

By: jerjer (jerjer) 2003-09-08 06:07:23

I'll pull out the call forward pieces.  I do not believe the channel driver itself needs to really deal with call fowarding, since one can accompolish call fowarding using extension logic.

By: jerjer (jerjer) 2003-09-22 11:44:23

This breaks normal operation of chan_h323.

By: jerjer (jerjer) 2003-09-22 11:44:57

Removed from CVS

By: Digium Subversion (svnbot) 2008-01-15 14:33:57.000-0600

Repository: asterisk
Revision: 1482

U   trunk/channels/chan_h323.c
U   trunk/channels/h323/ast_h323.cpp
U   trunk/channels/h323/ast_h323.h
U   trunk/channels/h323/chan_h323.h

r1482 | jeremy | 2008-01-15 14:33:57 -0600 (Tue, 15 Jan 2008) | 2 lines

implement transfer and call forwarding. Bug ASTERISK-218