Iif you're just forwarding to another destination, you'd better let the destination answer the call, instead of you answering _after_ bridging it:
<condition field="network_addr" expression="^xx\.yy\.zz\.tt$"> <-- As Ciprian pointed out, using the IP is not always a good idea. Are you also using ACL?
<action application="set" data="ringback=...."/>
<action application="pre_answer" data=""/>
<action application="bridge" data="{...}sofia/external/${destination_number}@$${OTHER_PROVIDER}"/>
<action application="answer" data=""/> <--- shouldn't be here, you're answering the call after you've transferred it.
<action application="hangup" data=""/>
</condition>
You're also not using a gateway, but an IP address, instead create a gateway and use it like so:
<action application="bridge" data="{...}sofia/gateway/[your-gateway]/${destination_number}"/>
About the media, according to Brian:
Does nothing.
Does nothing.
But that was in regards to t.38, so...
Regards,
David Villasmil
phone: +34669448337