Jigasi asterisk trunk (noaudio) vs. sipclient (works)

Hi there,

I’m facing a strange issue regarding jigasi in combination with asterisk and sip trunks.

If I use a sip trunk, audio is broken because jigasi dosn’t send RTP packets to asterisk and not forwarding packets from asterisk into the conference room.

If I configure an local sip account on asterisk everything works fine, until I force asterisk to hold the mediacontroll with the “h” option in the dial command.
good → Dial(SIP/1234,5)
bad → Dial(SIP/1234,5,h)

We’ve analized the issue with sngrep, there we can see that jigasi only forwards media if it gets an reinvite, otherwise jigasi is not sending rtp and not forwarding received rtp.

jigasi 1.1-195-g65ef768-1 running on ubuntu 18.04

Seems like a Bug!?

  • Hole Punch Pakets doesn’t have any effect
  • SKIP_REINVITE_ON_FOCUS_CHANGE_PROP also no effect

Thanks

Paul

Is your asterisk account configured with nat=yes?

Thanks for your answer.

It is not required cause the system has an wan ip address, but I tried it just to verify, it doesn’t change anything.

so, i tried both

It is required by jigasi, in the newer versions of asterisk it is nat=force_rport,comedia, I think …
And you also need and this probably Jigasi, no audio when other are mute (even with NAT hole punch and nat=force_rport,comedia) - #6 by damencho

You need to make sure asterisk does latching, will send media to the destination where the rtp is coming from

Thanks, I saw that thread already and tested both strictrtp=no/yes same issue.

sorry and also nat=force_rport,comedia it is asterisk 13x so nat=yes should also work

[1234]
type=friend
context=jigasi
secret=xxxxxxxx
host=dynamic
disallow=all
allow=alaw
direct_media=no
canreinvite=yes
nat=yes

I don’t think nat=yes works on 13 …

tested again with nat=force_rport,comedia exactly the same

I see rtp to jigasi, but not from jigasi and I’m not hearing anything in any direction

:man_shrugging: maybe try with a tcpdump and see where do the hole punch packets go …

they are going direct to the sip trunk provider ip

I’m not sure how is that possible when you have direct_media=no
This means asterisk is adding your provider IP in the sdp that sends to jigasi …

I think this is normal if a sip trunk is used.
If I force the packets over asterisk within the dailcommand with the h option, I can break it also for the direct connected client which has an account on the asterisk.

Is your sip trunk configured to do latching?

yes it is

[ext-sip-account]
type=friend
context=from-voip-provider
defaultuser=012345678
fromuser=012345678
secret=xxxxxxxxxxxxxxxx
host=sip.dtst.de
fromdomain=sip.dtst.de
canreinvite=yes
qualify=yes
insecure=port,invite
nat=force_rport,comedia
disallow=all
allow=alaw
direct_media=no

Set this to no.