Works: <extension name="Local_Extension"> <condition field="destination_number" expression="^(10[01][0-9])$"> <action application="export" data="absolute_codec_string=${ep_codec_string},PCMU@8000h"/> <action application="export" data="inherit_codec=true"/> <action application="bridge" data="user/${dialed_extension}@${domain_name}"/> <action application="answer"/> <action application="sleep" data="1000"/> <action application="bridge" data="loopback/app=voicemail:default ${domain_name} ${dialed_extension}"/> </condition> </extension> -- Brian West brian@freeswitch.org FreeSWITCH Solutions, LLC PO BOX 2531 Brookfield, WI 53008-2531 Twitter: @FreeSWITCH , @briankwest http://www.freeswitchbook.com http://www.freeswitchcookbook.com T: +1.918.420.9001 | F: +1.918.420.9002 | M: +1.918.424.WEST iNUM: +883 5100 1420 9001 ISN: 410*543 Skype:briankwest PGP Key: http://www.bkw.org/key.txt (AB93356707C76CED) On Jan 31, 2014, at 1:52 AM, Dahlberg, David <david.dahlberg@fkie.fraunhofer.de> wrote:
Am Donnerstag, den 30.01.2014, 22:02 +0100 schrieb thomas peterseil:
hello brian, thanks for your help! as far as i understood the default config of FS, it takes the codec list from the vars.xml file. i have both codecs (PCMU,PCMA) there: -------------- <X-PRE-PROCESS cmd="set" data="global_codec_prefs=G722,PCMU,PCMA,GSM"/> <X-PRE-PROCESS cmd="set" data="outbound_codec_prefs=PCMU,PCMA,GSM"/> --------------
Right, but the default configuration (i.e. the "vanilla demo") also sets "inbound-late-negotiation" and "zrtp-passthru", which implicitly sets "inbound-late-negotiation".
"Late negotiation" with "inherit codec" will make FS only to offer only those codecs on the outbound side, that it received on the inbound side.
For example be there a setup "A -- FS -- B", A uses G.711A and G.711ยต, FS uses G.711A and GSM-FR, and B uses GSM-FR. If then FS receives an "INVITE B, codec PCMA, PCMU" from A, it will forward PCMA as the only codec choice to B.
See http://wiki.freeswitch.org/wiki/Codec_Negotiation
Regards, David