Uploaded image for project: 'FreeSWITCH'
  1. FreeSWITCH
  2. FS-5949

Error when resuming a call on hold (PJSIP and SILK)

    Details

    • Type: Bug
    • Status: Closed
    • Priority: Minor
    • Resolution: Fixed
    • Affects Version/s: 1.5
    • Fix Version/s: None
    • Component/s: freeswitch-core, RTP
    • Labels:
      None
    • CPU Architecture:
      x86-64
    • Kernel:
      Linux
    • uname:
      Linux debianvmamd64 2.6.32-5-amd64 #1 SMP Sat May 5 01:12:59 UTC 2012 x86_64 GNU/Linux
    • Userland:
      GNU/Linux
    • Distribution Version:
      Debian 6 squeeze
    • lsb_release:
      Hide
      No LSB modules are available.
      Distributor ID: Debian
      Description: Debian GNU/Linux 6.0.7 (squeeze)
      Release: 6.0.7
      Codename: squeeze
      Show
      No LSB modules are available. Distributor ID: Debian Description: Debian GNU/Linux 6.0.7 (squeeze) Release: 6.0.7 Codename: squeeze
    • Compiler:
      gcc
    • Compiler Version:
      4.4.5-1
    • FreeSWITCH GIT Revision:
      1.5.6b+git~20131106T225731Z~8bc0f99e70~64bit (git 8bc0f99e 2013-11-06 22:57:31Z 64bit)
    • GIT Master Revision hash::
      yes

      Description

      I'm seeing errors when resuming a call on hold.
      I've reproduced the problems with a stock FS installation and 3rd party clients for generality.
      FS runs on 192.168.142.156 and it's configured with stock vanilla conf plus the changes that I'll detail below.
      Caller (1000@192.168.142.156) is Blink for Windows (0.5.0, August 9th 2013)
      Callee (1001@192.168.142.156) is PJSUA with SILK (http://svn.pjsip.org/repos/pjproject/trunk rev. 4640 and SILK_SDK_SRC_v1.0.9), running on 192.168.142.156:5064
      After answering PJSUA plays a wav file.

      There are two cases ("OK" and "FAIL").

      OK:

      dialplan/default.xml uses:
      <action application="export" data="nolocal:absolute_codec_string=PCMU,PCMA"/>

      [^OK_fs_cli_log.txt]: FS cli log ('sofia global siptrace on' and 'console loglevel debug')
      [^OK_pjsua_log.txt]: PJSUA log
      [^OK_SIP_RTP.pcap]: SIP and RTP taken from FS
      Hold and resume work OK.
      B-leg uses G.711.


      FAIL:
      dialplan/default.xml uses:
      <action application="export" data="nolocal:absolute_codec_string=SILK@24000h@20i,SILK@16000h@20i,SILK@8000h@20i,speex@16000h@20i,speex@8000h@20i,PCMU,PCMA"/>

      [^FAIL_fs_cli_log.txt]: FS cli log ('sofia global siptrace on' and 'console loglevel debug')
      [^FAIL_pjsua_log.txt]: PJSUA log
      [^FAIL_SIP_RTP_fromFS.pcap]: SIP and RTP taken from FS
      Hold works OK (callers hears also moh).
      Resume fails, and FS logs:
      {code}
      2013-11-07 18:29:42.686309 [ERR] switch_rtp.c:4351 Error: SRTP audio unprotect failed with code 7 (auth check failed) 101
      {code}


      ===========
      FS configuration:

      As in {http://wiki.freeswitch.org/wiki/Linux_Quick_Install_Guide|http://wiki.freeswitch.org/wiki/Linux_Quick_Install_Guide], installation from git, plus:
      sip_profiles/internal.xml has:
      {code}
      + <param name="sip_allow_crypto_in_avp" value="true"/>
      ...
      - <param name="inbound-late-negotiation" value="true"/>
      + <param name="inbound-late-negotiation" value="false"/>
      ...
      - <param name="inbound-zrtp-passthru" value="true"/>
      + <param name="inbound-zrtp-passthru" value="false"/>
      {code}

      dialplan/default.xml (in the failing case - see above):
      {code}
      + <action application='export' data='nolocal:rtp_secure_media=true'/>
      + <action application='export' data='sip_allow_crypto_in_avp=true'/>
      + <action application="export" data="nolocal:absolute_codec_string=SILK@24000h@20i,SILK@16000h@20i,SILK@8000h@20i,speex@16000h@20i,speex@8000h@20i,PCMU,PCMA"/>
      +
      {code}

      autoload_configs/modules.conf.xml:
      {code}
      + <load module="mod_silk"/>
      {code}

      vars.xml has a different default_password and:
      {code}
      - <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"/>
      + <X-PRE-PROCESS cmd="set" data="global_codec_prefs=SILK@24000h@20i,SILK@16000h@20i,SILK@8000h@20i,speex@16000h@20i,speex@8000h@20i,PCMU,PCMA"/>
      + <X-PRE-PROCESS cmd="set" data="outbound_codec_prefs=SILK@24000h@20i,SILK@16000h@20i,SILK@8000h@20i,speex@16000h@20i,speex@8000h@20i,PCMU,PCMA"/>
      {code}

        Attachments

        1. FAIL_fs_cli_log.txt
          73 kB
        2. FAIL_noSRTP_fs_cli_log.txt
          70 kB
        3. FAIL_noSRTP_pjsua_log.txt
          14 kB
        4. FAIL_noSRTP_SIP_RTP.pcap
          654 kB
        5. FAIL_pjsua_log.txt
          21 kB
        6. FAIL_SIP_RTP_fromFS.pcap
          308 kB
        7. freeswitch.failresume.20141031.log
          80 kB
        8. freeswitch.OK.20141031.log
          84 kB
        9. OK_fs_cli_log.txt
          70 kB
        10. OK_pjsua_log.txt
          19 kB
        11. OK_SIP_RTP.pcap
          1.39 MB
        12. patch_src_switch_core_media_5870.txt
          5 kB

          Activity

            People

            • Assignee:
              anthm Anthony Minessale II
              Reporter:
              giavac Giacomo Vacca
            • Votes:
              2 Vote for this issue
              Watchers:
              7 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved: