[Freeswitch-users] Call keeps hanging up

Mark Sobkow m.sobkow at marketelsystems.com
Thu Mar 4 10:36:23 PST 2010

I'm having some difficulty with Freeswitch/Erlang processing.  An 
operator dials in and registers by entering a PIN code, which triggers 
an Erlang event handler callback and puts the call into park.  This works.

A customer calls in, which triggers another Erlang event handler 
callback and puts the call into park.  That works, too.

Another thread of Erlang checks the operator and customer queues, and 
uses uuid_bridge to join the two calls together.  That also works.

What _doesn't_ work is that when the customer hangs up, I want the 
operator A leg to go back into a park state, and it's hanging up 
instead.  One suspicion I have is that because there is no dialplan 
associated with the call (it's controlled by Erlang), there is no 
dialplan to "continue" by setting hangup_after_bridge=false.  Either 
that or maybe I need to set the variables on the new UUID returned by 
the uuid_bridge command (though I thought that UUID was just the UUID 
assigned to the command, not a new call identifier.)

BTW, "pbx" is just an OTP rewrite of pieces of the standard 
"freeswitch.erl" code.

    pbx:api( uuid_setvar, Operator#pbx_operator_registry.operator_uuid 
++ " hangup_after_bridge false" ),
    pbx:api( uuid_setvar, Operator#pbx_operator_registry.operator_uuid 
++ " park_after_bridge true" ),

    BridgeResult = pbx:api( uuid_bridge, 
Operator#pbx_operator_registry.operator_uuid ++ " " ++ 
Customer#pbx_cust_queue.uuid ),

Mark Sobkow
Senior Developer
MarkeTel Multi-Line Dialing Systems LTD.
428 Victoria Ave
Regina, SK S4N-0P6
Toll-Free: 800-289-8616-X533
Local: 306-359-6893-X533
Fax: 306-359-6879
Email: m.sobkow at marketelsystems.com
Web: http://www.marketelsystems.com 

More information about the FreeSWITCH-users mailing list