DID sharing voice and fax

In order to avoid call charges for the caller when answering calls ‘unnecessarily’ (i.e. no one answers a voice call), this is what I want to achieve for my setup:

When someone calls a DID, an extension will ring. If no answers for 20 seconds, it will switch to fax. No fax detection is required. However, if someone picks up the extension and realises it is a fax call, he can transfer the call manually to the fax. I am thinking something like a blind transfer.

Is it possible?

So far I can work out the no answer part but couldn’t figure out how to put the blind transfer in place. Any pointers?

My extension.conf looks something like this:

[incoming]
exten => s,1,Dial(SIP/701,20,T)
exten => s,n,GotoIf($["${DIALSTATUS}" = “NOANSWER”]?noans:eek:thers)
exten => s,n(noans),Goto(fax-services,s,1)
exten => s,n(others),Hangup()

[fax-services]
exten => s,1,NoOp(“from-voip: FAX ${CALLERID(num)}”)
exten => s,n,Set(FAXDEST=/tmp)
exten => s,n,Set(CALLTIME=${STRFTIME(${EPOCH},%a %b %d %H:%M:%S %Z %Y)})
exten => s,n,Set(FILENAME=fax-${STRFTIME(${EPOCH},%Y%m%d-%H%M%S)})
exten => s,n,Set(TIFF=${FILENAME}.tif)
exten => s,n,ReceiveFAX(${FAXDEST}/${TIFF})
exten => s,n,Hangup()