Hi,
The original post describing my problem can be found here.
Sorry for creating a new topic, but unfortunately, the previous discussion was closed yesterday, and I still have some follow-up questions. To recap, here’s the problem as described in the original topic:
My objective was to set up FreePBX such that it would dynamically route incoming calls under a new CallerId to a new destination. I achieved this with the following setup:
Inbound Route (Catch all) → Dynamic Route (Requests API with CallerId and Destination to retrieve new CallerId and new Destination) → Dynamic Route (Sets new CallerId and new Destination as Asterisk variables by using the API response from previous Dynamic Route) → Set CallerId (Sets CallerId to the value of the New CallerId variable) → Custom Destination (from-internal,${NewDID},1) → Outbound Route
This works and the calls get through but a problem arises when the callee rejects the call without answering it. The hangup response is sent to FreePBX, and it’s as if part of the call gets rejected, but the inbound part doesn’t get the message. The caller hears “The number is not answering,” but afterward, a quick beeping tone continues, and eventually, the call retries automatically if the caller hasn’t hung up. I also noticed that forcing acceptance of calls on the inbound route resolves the redial issue but introduces an undesirable delay (15-20 seconds) between the callee hanging up and the caller receiving the message. Additionally, I’d prefer not to accept every call automatically.
I’m still looking into this issue but haven’t yet found a resolution. It was suggested that the problem could be upstream from Asterisk due to two calls being initiated, but I don’t think that’s the issue since rejecting calls directly from my extension through the same SIP trunk works without any problems.
Any further guidance or suggestions would be greatly appreciated.
I am using FreePBX version 16.0.40.11.