[Freeswitch-users] Call keeps hanging up

Andrew Thompson andrew at hijacked.us
Thu Mar 4 10:47:55 PST 2010


On Thu, Mar 04, 2010 at 12:36:23PM -0600, Mark Sobkow wrote:
> 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" ),
>

Try using park_after_bridge and catch the park event or
transfer_after_bridge and set the dialplan location to transfer the call
to.

Andrew




More information about the FreeSWITCH-users mailing list