[Freeswitch-users] Strange problem when using group_call

Paul Mateer Paul.Mateer at outlook.com
Tue Apr 25 18:10:20 MSD 2017


I've been doing a little playing around with conference calls and I've encountered some odd behaviour that perhaps someone can account for.

I have a system with FreeSWITCH version 1.7 along with the FSClient (Client Id 5006). I have another system running FSClient (ClientId 5007).

I have the following extension added in my public dialplan:

  <extension name="group_dial_surveillance">
    <condition field="destination_number" expression="^1000$">
      <action application="set" data="hangup_after_bridge=true"/>
      <action application="set" data="continue_on_fail=true"/>
      <action application="set" data="originate_continue_on_timeout=true"/>
      <action application="set" data="call_timeout=0"/>
      <action application="set" data="ignore_early_media=true"/>
      <action application="bridge" data="${group_call(surveillance@${domain_name}+A)}"/>
      <action application="transfer" data="1000 XML default"/>
      <action application="hangup"/>
    </condition>
  </extension>

If I dial the number 1000 from a third softphone, then both FSClient phones ring and when one answers the call the other stops ringing.
No problem there - that's exactly what I would expect as the bridge application is being passed the output for a group_call on the surveillance group (consisting of users 5006 and 5007).

I also have the following Mad Boss extension in my dialplan:

  <extension name="Mad Boss">
    <condition field="destination_number" expression="^0911$">
      <action application="set" data="conference_auto_outcall_caller_id_name=Mad Boss1"/>
      <action application="set" data="conference_auto_outcall_caller_id_number=0911"/>
      <action application="set" data="conference_auto_outcall_timeout=60"/>
      <action application="set" data="conference_auto_outcall_flags=mute"/>
      <action application="set" data="end-conf-grace-time=1"/>
      <action application="set" data="conference_auto_outcall_prefix={sip_auto_answer=true}"/>
      <action application="set" data="sip_exclude_contact=${network_addr}"/>
      <action application="conference_set_auto_outcall" data="${group_call(surveillance@${domain_name}+A)}"/>
<!--      <action application="conference_set_auto_outcall" data="user/5006@$${domain}"/>
      <action application="conference_set_auto_outcall" data="user/5007@$${domain}"/> -->
      <action application="conference" data="madboss_intercom1 at default+flags{endconf|deaf}"/>
    </condition>
  </extension>

The problem is that when the third softphone is used to dial 0911, only one of the two phones answers.

Looking through the log files I've found that when 1000 is dialled and the group_dial_surveillance extension is processed the following is logged:

EXECUTE sofia/internal/4008 at 10.51.54.185 bridge([^^:sip_invite_domain=10.51.54.76:presence_id=5006 at 10.51.54.76]sofia/internal/sip:gw+1 at 10.51.54.76:12346;transport=udp;gw=1,[^^:sip_invite_domain=10.51.54.76:presence_id=5007 at 10.51.54.76]sofia/internal/sip:gw+3 at 10.51.54.185:12346;transport=udp;gw=3)

but when 0911 is dialled and the Mad Boss extension is executed the following is logged:

EXECUTE sofia/internal/4008 at 10.51.54.185 conference_set_auto_outcall([^^:sip_invite_domain=10.51.54.76:presence_id=5006 at 10.51.54.76]sofia/internal/sip:gw+1 at 10.51.54.76:12346;transport=udp;gw=1,[^^:sip_invite_domain=10.51.54.76:presence_id=5007 at 10.51.54.76]error/user_not_registered)


As far as I can see the data passed to the bridge and conference_set_auto_outcall should be the same - the data entries for both are identical, but in the case of the conference call for some reason the group_call is not locating the second user. If I switch to explicitly listing the users instead of using the group_call both phones will ring, if I switch back to using group_call then the second phone doesn't ring. and the same user_not_registered message is logged.

It's completely reproducible as every call to 1000 works every time and every call to 0911 fails every time. As mentioned, I can work around the issue, but I'm kind of curios as to what would be causing it.

Paul


PS. On a slightly different note, is there a way to terminate the conference when the person who initiates it (the moderator?) hangs up?
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.freeswitch.org/pipermail/freeswitch-users/attachments/20170425/1f6d03ff/attachment.html 


Join us at ClueCon 2016 Aug 8-12, 2016
More information about the FreeSWITCH-users mailing list