That may be true, because you don&#39;t always know what files/folders to edit. Technically, you may not even need files/folders because you are using mod_xml_curl or something like that. However, we could add a sentence like:<br>
<br>&quot;If you are using the default &#39;vanilla&#39; configs, the groups are defined in conf/directory/default.xml and the dialplan entries are found in conf/dialplan/default.xml&quot;<br><br>Would that help? If so, please add that text as I&#39;m positive that it&#39;s correct. If you are having trouble with wiki editing let me know and I&#39;ll be happy to help. At some point one of these days I&#39;m gonna do screencast w/ training on how to do wiki editing...<br>
<br>-MC<br><br><div class="gmail_quote">On Mon, Jul 9, 2012 at 10:08 AM, Todd Bailey <span dir="ltr">&lt;<a href="mailto:toddb@toddbailey.net" target="_blank">toddb@toddbailey.net</a>&gt;</span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
I think what is missing in this wiki is it doesn&#39;t explicitly state what<br>
file(s) and in what folder(s) needs to be edited.<br>
<br>
<br>
<br>
here is an extract of the section that I suspect is what I need to<br>
follow<br>
<br>
Groups<br>
<br>
A group is a logical collection of users that FreeSWITCH can use to<br>
bridge calls in a serial or parallel fashion, depending on the arguments<br>
to the group_call application. Using groups is optional -- you can put<br>
your users straight into the domain section if you desire.<br>
<br>
This is specially useful if you use mod_xml_curl to provide the user<br>
directory to FreeSWITCH and want to group some users in a logical<br>
structure. The following group &#39;200&#39; groups four users. It&#39;s interesting<br>
to notice the &quot;dial-string&quot; param, which is used to bridge the calls to<br>
those users. Users 1000 and 1001 will use the default &quot;dial-string&quot;<br>
while user 2014 uses a loopback channel so FreeSWITCH can actually query<br>
the dialplan to figure out how to reach that user (this also works for<br>
external numbers through OpenZAP and gateways):<br>
<br>
type=&quot;pointer&quot; is a pointer so you can have the same user in multiple<br>
groups. It basically means to keep searching for the user in the<br>
directory.<br>
<br>
&lt;document type=&quot;freeswitch/xml&quot;&gt;<br>
 &lt;section name=&quot;directory&quot;&gt;<br>
   &lt;domain name=&quot;<a href="http://sip.example.com" target="_blank">sip.example.com</a>&quot;&gt;<br>
     &lt;users&gt;<br>
       &lt;user id=&quot;1000&quot;&gt;<br>
         &lt;params&gt;<br>
           &lt;param name=&quot;dial-string&quot; value=&quot;{presence_id=${dialed_user}@<br>
${dialed_domain}}${sofia_contact(${dialed_user}@${dialed_domain})}&quot;/&gt;<br>
         &lt;/params&gt;<br>
         &lt;variables&gt;<br>
           &lt;variable name=&quot;user_context&quot; value=&quot;default&quot;/&gt;<br>
         &lt;/variables&gt;<br>
       &lt;/user&gt;<br>
       &lt;user id=&quot;1001&quot;&gt;<br>
         &lt;params&gt;<br>
           &lt;param name=&quot;dial-string&quot; value=&quot;{presence_id=${dialed_user}@<br>
${dialed_domain}}${sofia_contact(${dialed_user}@${dialed_domain})}&quot;/&gt;<br>
         &lt;/params&gt;<br>
         &lt;variables&gt;<br>
           &lt;variable name=&quot;user_context&quot; value=&quot;default&quot;/&gt;<br>
         &lt;/variables&gt;<br>
       &lt;/user&gt;<br>
     &lt;/users&gt;<br>
     &lt;groups&gt;<br>
       &lt;group name=&quot;200&quot;&gt;<br>
         &lt;users&gt;<br>
           &lt;user id=&quot;2014&quot;&gt;<br>
             &lt;params&gt;<br>
               &lt;param name=&quot;dial-string&quot;<br>
value=&quot;loopback/2014/default/XML&quot;/&gt;<br>
             &lt;/params&gt;<br>
             &lt;variables&gt;<br>
               &lt;variable name=&quot;user_context&quot; value=&quot;default&quot;/&gt;<br>
             &lt;/variables&gt;<br>
           &lt;/user&gt;<br>
           &lt;user id=&quot;1000&quot; type=&quot;pointer&quot;/&gt;<br>
           &lt;user id=&quot;1001&quot; type=&quot;pointer&quot;/&gt;<br>
         &lt;/users&gt;<br>
       &lt;/group&gt;<br>
     &lt;/groups&gt;<br>
   &lt;/domain&gt;<br>
 &lt;/section&gt;<br>
&lt;/document&gt;<br>
<br>
The dialplan for the above group can be defined like this:<br>
<br>
     &lt;extension name=&quot;Group 200&quot;&gt;<br>
       &lt;condition field=&quot;destination_number&quot; expression=&quot;200&quot;&gt;<br>
         &lt;action application=&quot;set&quot; data=&quot;hangup_after_bridge=true&quot;/&gt;<br>
         &lt;action application=&quot;set&quot; data=&quot;continue_on_fail=true&quot;/&gt;<br>
         &lt;action application=&quot;set&quot;<br>
data=&quot;originate_continue_on_timeout=true&quot;/&gt;<br>
         &lt;action application=&quot;set&quot; data=&quot;call_timeout=15&quot;/&gt;<br>
         &lt;action application=&quot;bridge&quot; data=&quot;${group_call(200@<br>
${domain_name}+F)}&quot;/&gt;<br>
         &lt;action application=&quot;transfer&quot; data=&quot;200 XML default&quot;/&gt;<br>
         &lt;action application=&quot;hangup&quot;/&gt;<br>
       &lt;/condition&gt;<br>
     &lt;/extension&gt;<br>
<br>
The extension 200 will ring all the users defined in the user directory<br>
for group 200 in a serial fashion (specified by the +F argument, if you<br>
want to ring all the users at once use the +A argument) for 15 seconds,<br>
then it will transfer the call to the same group again so the call will<br>
ring the group infinitely.<br>
<br>
To explain the variables set prior to the bridge:<br>
<br>
The hangup_after_bridge is set to true for this effect: if the bridge is<br>
successfully answered and the B-leg later hangs up, the A-leg will also<br>
be hung up.<br>
<br>
The continue_on_fail is set to true for this: if the bridge fails,<br>
dialplan execution will continue and the transfer will be executed.<br>
<br>
The originate_continue_on_timeout is set to true for this: if the<br>
bridge&#39;s dial string specifies several destinations separated by the<br>
&quot;|&quot; (this is for failover), the bridge will time out on an unanswered<br>
destination and will attempt the next specified destination. Without<br>
originate_continue_on_timeout set to true, the bridge will time out on<br>
the first destination it tries and the bridge itself will fail. (In the<br>
example above, the bridge string is generated by group_call with the +F<br>
option; this specifies a dial string with all the group&#39;s destinations<br>
separated by &quot;|&quot;. So originate_continue_on_timeout needs to be set to<br>
true for serial calling behavior.)<br>
<br>
The call_timeout is set so that the bridge attempt to a destination that<br>
goes unanswered will time out. NOTE: If the destination sends early<br>
media, the bridge will be answered (pre-answered) and will NOT time out!<br>
To time out a bridge attempt to a destination sending early media, set<br>
ignore_early_media to true.<br>
<br>
The dialplan for user 2014, which in this example happens to be<br>
terminated through a gateway defined via mod_lcr, can be defined like<br>
this:<br>
<br>
     &lt;extension name=&quot;Extension 2014&quot;&gt;<br>
       &lt;condition field=&quot;destination_number&quot; expression=&quot;2014&quot;&gt;<br>
         &lt;action application=&quot;lcr&quot; data=&quot;2014&quot;/&gt;<br>
         &lt;action application=&quot;set&quot; data=&quot;dialed_ext=${lcr_auto_route}&quot;/&gt;<br>
         &lt;action application=&quot;export&quot; data=&quot;dialed_ext=<br>
${lcr_auto_route}&quot;/&gt;<br>
         &lt;action application=&quot;set&quot; data=&quot;hangup_after_bridge=true&quot;/&gt;<br>
         &lt;action application=&quot;set&quot; data=&quot;call_timeout=120&quot;/&gt;<br>
         &lt;action application=&quot;bridge&quot; data=&quot;${lcr_auto_route}&quot;/&gt;<br>
         &lt;action application=&quot;hangup&quot;/&gt;<br>
       &lt;/condition&gt;<br>
     &lt;/extension&gt;<br>
<br>
<br>
<br>
<br>
On Mon, 2012-07-09 at 01:49 -0700, Stanislav Sinyagin wrote:<br>
&gt; <a href="http://wiki.freeswitch.org/wiki/XML_User_Directory_Guide" target="_blank">http://wiki.freeswitch.org/wiki/XML_User_Directory_Guide</a><br>
<br>
<br>
_________________________________________________________________________<br>
Professional FreeSWITCH Consulting Services:<br>
<a href="mailto:consulting@freeswitch.org">consulting@freeswitch.org</a><br>
<a href="http://www.freeswitchsolutions.com" target="_blank">http://www.freeswitchsolutions.com</a><br>
<br>
FreeSWITCH-powered IP PBX: The CudaTel Communication Server<br>
<a href="http://www.cudatel.com" target="_blank">http://www.cudatel.com</a><br>
<br>
Official FreeSWITCH Sites<br>
<a href="http://www.freeswitch.org" target="_blank">http://www.freeswitch.org</a><br>
<a href="http://wiki.freeswitch.org" target="_blank">http://wiki.freeswitch.org</a><br>
<a href="http://www.cluecon.com" target="_blank">http://www.cluecon.com</a><br>
<br>
Join Us At ClueCon - Aug 7-9, 2012<br>
<br>
FreeSWITCH-users mailing list<br>
<a href="mailto:FreeSWITCH-users@lists.freeswitch.org">FreeSWITCH-users@lists.freeswitch.org</a><br>
<a href="http://lists.freeswitch.org/mailman/listinfo/freeswitch-users" target="_blank">http://lists.freeswitch.org/mailman/listinfo/freeswitch-users</a><br>
UNSUBSCRIBE:<a href="http://lists.freeswitch.org/mailman/options/freeswitch-users" target="_blank">http://lists.freeswitch.org/mailman/options/freeswitch-users</a><br>
<a href="http://www.freeswitch.org" target="_blank">http://www.freeswitch.org</a><br>
</blockquote></div><br>