I'm trying to program an extension in the dialplan to do an intercom announce. I read through the wiki and wrote the following based on what I thought I understood from it, but it's not working the way I expect: <extension name="Global Announce"> <condition field="destination_number" expression="^89$" break="never"> <!--These params effect the outcalls made once you join--> <!-- First we set the api_hangup_hook to kick everyone from the conference when the initiator hangs up. --> <action application="set" data="api_hangup_hook=conference 89 kick all"/> <action application="answer"/> <action application="export"><![CDATA[sip_h_Call-Info=<sip:$${domain}>;answer-after=0]]></action> <action application="export" data="sip_invite_params=intercom=true"/> <action application="export" data="sip_auto_answer=true"/> <!-- If the above exports do not product the desired results, try passing the variables as commented out below --> <!--<action application="conference_set_auto_outcall" data="{sip_auto_answer=true}sofia/gateway/asterlink.com/19184238080"/>--> <action application="set" data="conference_auto_outcall_caller_id_name=$${effective_caller_id_name}"/> <action application="set" data="conference_auto_outcall_caller_id_number=$${effective_caller_id_number}"/> <!-- Keep the call time down to a few seconds. If calling phones that don't auto-answer you may want to --> <!-- increase this value to something a bit more persistent than 5 seconds. --> <action application="set" data="conference_auto_outcall_timeout=5"/> <!--if you don't need to hear the participants, as in a page instead of multi-party intercom --> <!-- then use "mute" instead of "none" as the conference_outcall_flags below. --> <action application="set" data="conference_auto_outcall_flags=mute"/> <!-- If you'd like to say something to the participant and have cepstral configured and installed, now's the time. --> <!--<action application="set" data="conference_auto_outcall_announce=say:You have been called into an emergency conference"/>--> <!--Add as many of these as you need, These are the people you are going to call--> <!-- We have commented these out since we have the list of participants down below as a catch-all in case the caller_id --> <!-- of the initiating party doesn't match the phones being called. --> <!--<action application="conference_set_auto_outcall" data="sofia/gateway/asterlink.com/19184238080"/>--> <!--<action application="conference_set_auto_outcall" data="sofia/default/888@conference.freeswitch.org"/>--> </condition> <condition field="caller_id_number" expression="^303$" break="never"> <antiaction application="conference_set_auto_outcall" data="user/303@$${domain}"/> <antiaction application="set" data="conference_auto_outcall_flags=mute"/> </condition> <condition field="caller_id_number" expression="^304$" break="never"> <antiaction application="conference_set_auto_outcall" data="user/304@$${domain}"/> <antiaction application="set" data="conference_auto_outcall_flags=mute"/> </condition> <!-- Now we check the destination again and act accordingly. --> <condition field="destination_number" expression="^89$"> <!-- Please note that you can also designate your own conference bridge instead of default and enable only the options you desire.--> <!-- I have kept the default conference in this example so that you can get this to work before changing the conference to something --> <!-- with your own options enabled. In this way the example provided here should work and you can fine tune your conference to your --> <!-- desire. See the config file autoload_configs/conferences.conf.xml for more information on how/what to do or consult the Wiki --> <!-- IMPORTANT IMPORTANT IMPORTANT - use ONLY ONE of the two options below --> <!-- OPTION 1 --> <!-- If your phones are all isolated from one another (not in the same room, uncomment the following line --> <!-- <action application="conference" data="89@default"/> --> <!-- OPTION 2 --> <!-- If you encounter feedback issues use the conference profile given on this page --> <!-- and comment out the application line in OPTION 1 above --> <!-- and un-comment the line below --> <!-- <action application="conference" data="89@intercom"/> --> <!--After the hangup, we kick everyone in the conference to cause a hangup. --> <!--This shouldn't be necessary since it should be handled above in the api_hangup_hook. --> <action application="conference" data="89 kick all"/> </condition> </extension>