I am aware of this and I am fine with losing this insight. It is not needed as this call is getting transferred to a third party answering service. They require the caller ID of the callee, not my number though. Performing the transfers that I was doing in my post, the caller ID has to reflect one of my numbers. The answering service needs the number of the customer calling in.
So I have done the following:
Created a custom dialing plan in extensions_custom.conf with the following:
[external-transfer-out]
exten => s,1,transfer(PJSIP/[10 digit external number here])
Then I created a custom destination, pointing to that custom dial plan:
Target: external-transfer-out,s,1
I set this as the fail over destination inside of a queue, for my testing purposes, I have the queue timeout after 1 second so it should push quickly to that. The call connects and I see in the asterisk logs:
-- Executing [5000@ext-queues:59] GotoIf("PJSIP/Twilio-US2-Oregon-00000036", "1?external-transfer-out,s,1:,,") in new stack
-- Goto (external-transfer-out,s,1)
-- Executing [s@external-transfer-out:1] Transfer("PJSIP/Twilio-US2-Oregon-00000036", "PJSIP/[10 digit external number here]") in new stack
-- Auto fallthrough, channel 'PJSIP/Twilio-US2-Oregon-00000036' status is 'UNKNOWN'
My call rings for a second, then is disconnected. I also do not see any logs on Twilios side for the transfer, just the originating call entry for my call going in. What am I missing here?
EDIT: I have also enabled the transfer option on the trunk on Twilio’s side:
