In the following scenario:

vars.xml:
      <X-PRE-PROCESS cmd="set" data="media_mix_inbound_outbound_codecs=true"/>

internal.xml:
    <param name="inbound-codec-prefs" value="G722, PCMU, PCMA, G729"/>
    <param name="inbound-codec-negotiation" value="generous"/>
    <param name="inbound-bypass-media" value="false"/>
    <param name="inbound-proxy-media" value="false"/>
    <param name="inbound-late-negotiation" value="false"/>
    <param name="inbound-zrtp-passthru" value="false"/>

external.xml:
    <param name="inbound-codec-prefs" value="G722, PCMU, PCMA, G729"/>
    <param name="inbound-codec-negotiation" value="generous"/>
    <param name="inbound-late-negotiation" value="false"/>
    <param name="inbound-zrtp-passthru" value="false"/> 

...with no further modifications performed on the dialplan.

I expect this result:    A ---> offers G729 ---> FreeSWITCH ---> offers ---> G729, G722, PCMU, PCMA ---> B

...but I get this result: A ---> offers G729 ---> FreeSWITCH ---> offers ---> G722, PCMU, PCMA, G729 ---> B

I'd like FreeSWITCH to offer B all the codecs from the list, but sorted accordiing to A's preference.

Can you help me figure out the settings?

Thanks,
Rogelio Perez