signalwire / freeswitch

FreeSWITCH is a Software Defined Telecom Stack enabling the digital transformation from proprietary telecom switches to a versatile software implementation that runs on any commodity hardware. From a Raspberry PI to a multi-core server, FreeSWITCH can unlock the telecommunications potential of any device.
https://freeswitch.com/#getting-started
Other
3.56k stars 1.41k forks source link

Deflect not working as intended on call forward #1697

Open smeyernyc opened 2 years ago

smeyernyc commented 2 years ago

Due to STIR/SHAKN and Twilio rules, external transfers like in a call forward scenario, must be initiated in the original inbound SIP dialog. When looking up the proper application, it seems that using "Deflect" SHOULD do that. Now, when I change "call_forward_all" dialplan to deflect instead of transfer, nothing happens. I have attached what my log shows for this action. There is nothing sent in the SIP flow and the call just terminates. Twilio has a good diagram if someone needs a visual of the proper flow. https://www.twilio.com/docs/sip-trunking/call-transfer

  1. Changed "action transfer ${forward_all_destination} XML ${domain_name}" to action deflect "${forward_all_destination} XML ${domain_name}" on call_forward_all
  2. Placed a call to an extension with a forwarded number (cell)
  3. Call connects to PBX and then disconnects on deflect with no refer sent to carrier in original call leg.

The call forward should initiate a refer to the carrier letting them know to transfer the call.

Freeswitch 1.10.7 with Fusion 5.0.1 deflect issue.txt

jimmyt86 commented 1 year ago

Hi Smeyernyc,

I think your syntax for deflect is incorrect and should probably look more like this;

Here's a link to the documentation; https://developer.signalwire.com/freeswitch/FreeSWITCH-Explained/Modules/mod-dptools/6586629/