SIP Outbound Proxy with invalid external IP address

Please please please someone take pity on me and help…!

I have a PBX which is behind a router which uses an LTE connection as it’s failover.

When the router is using the LTE connection, the trunks fail.

I know that I can get this to work if I can get outbound proxy working correctly but I’m obviously missing something. No matter how I configure chan_sip, the data at my provider’s end indicates the IP address of the PBX (which is invalid because, in effect, the LTE network is adding another NAT layer).

On a softphone, if I configure “outbound proxy” to the provider’s proxy, the provider’s end indicates the IP address of the outbound proxy as the source of the connection - and the softphone functions with two-way audio. If I disable “outbound proxy” on the softphone, the provider’s data shows the same information as it does for the PBX - and calls fail.

It seems that FreePBX/Asterisk is ignoring the outboundproxy field on the chan_sip definition. Am I misunderstanding the function of this field? Can I somehow force chan_sip (or PJSip) to use the outbound proxy?