How to configure so FS sends re-Invite to B, when A puts B on hold?

I have FreeSWITCH 1.10.7 and I would like to know how to configure FreeSWITCH so when a call A puts call B on hold, FreeSWITCH sends music on hold AND an Invite to B with a:sendonly.

By default, when A puts B on hold, B hears music on hold. But FreeSWITCH doesn’t send a re-Invite with a:sendonly.

How to configure so B hear music on hold and FreeSWITCH sends an Invite to B with a:sendonly?

*consider both users are in LAN (internal)

You can’t, we’re a B2BUA, so each leg stands alone.


I understand that each leg is independent. But I don’t see why a B2BUA can’t do that.
If leg A is bridge with leg B. And from leg A receives a hold event (a:sendonly) it would be nice that B2BUA sends a:sendonly to the leg B. As B2BUA “knows” that A is bridge with B.

Because the behavior you’re asking for is a proxy behavior, I’ll review the code again and see if there is a way, but as far as I recall we don’t.


Thanks Brian for answering my question. I understand if FreeSWITCH doesn’t support that right now.

But I’m still convinced that is not a proxy behavior. See, the reason of my question is that I’m trying to replicate the scenario described (ignoring proxies) in the document 3GPP TS 24 610 (about Call Hold. More specific, diagram: A.1.2). Maybe I’m wrong, but my understanding is that an AS works as a B2BUA. Just as FreeSWITCH. So, FreeSWITCH can behave as the AS/MRF, no? (Maybe right now it doesn’t have the features to support that, but it may be possible)

Try setting the an global var of rtp_pass_codecs_on_stream_change=true in vars.xml

I tried with the setting suggested and I have the desired behavior: FreeSWITCH send the re-Invte to B with a:sendonly and moh is heard on B.

Thanks Brian.

Awesome, there is a new variation of this one that won’t pass hold but everything else.