man2015 / red5phone

Automatically exported from code.google.com/p/red5phone
0 stars 0 forks source link

Transfer error solution #81

Open GoogleCodeExporter opened 9 years ago

GoogleCodeExporter commented 9 years ago
What steps will reproduce the problem?
0. For example at least B is red5phone user ;
1. Call from A to B, accept in B
2. Transfer from B to C, accept in C 
3. Transfer from A or C to B, accept in B
Error: Call is not established, only "incoming call ***" message appears

What is the expected output? What do you see instead?
Call should be established

What version of the product are you using? On what operating system?
red5 0.8.0, red5phone r39, Debian Lenny

Please provide any additional information below.
Solution:
Hangup correctly after transfer;

Two Solutions;
1--) In "Red5Manager.as" add "netConnection.call("hangup", null, uid)" 
inside doTransfer() function ->

public function doTransfer(transferTo:String):void {
    netConnection.call("transfer", null, uid, transferTo);
    netConnection.call("hangup", null, uid); // add this line
}

2--) Or in "SipUserAgent.java" add "hangup()" inside transfer() function ->

public void transfer( String transfer_to ){
    printLog("REFER/TRANSFER", "Init..." );
        try
            { if (call!=null && call.isOnCall())
                {
            call.transfer(transfer_to);
            hangup(); // add this line
        }
        }
    catch (Exception e) { printLog("transfer: ", e.toString());}
}

Hope this helps.

Original issue reported on code.google.com by mollamus...@gmail.com on 4 Nov 2009 at 9:55