Progress Audio Associated With 180 Ringing Not Passed To Extension When Using Pjsip

I’m setting up a new PBX in the Google cloud running FreePBX 14.0.1.36 /
Asterisk 14.7.5. Most calls are fine, but when calling an AT&T landline that is busy, ringback tone is heard instead of the expected busy signal. An example of a failing number is +1 408 269 1999 (a test number that is always busy). My production system running FreePBX 2.11.0.43 /
Asterisk 11.4.0 using chan_sip and the same phone and trunk does not have this problem.

Both extension and AnveoDirect trunk are using pjsip. I’m using Anveo’s
‘Smart Route Option’ which sends the call directly to AT&T (no intermediate tandem carrier). I don’t understand why, but AT&T’s response to the INVITE is 180 Ringing with associated SDP. RTP
(containing audio for busy signal) starts coming in, but the 180 Ringing passed to the extension does not have associated SDP so the phone continues to play ringback.

If I change the trunk to use chan_sip instead, the problem disappears. There is also no problem if I force Anveo to send the call to Verizon
(which acts as a tandem carrier for this call) ; Verizon sends 183
Progress with the busy signal audio. Tests with Flowroute did show the trouble (I assume that they would send this call directly to AT&T).

I’d like to migrate to pjsip – is there a trunk setting or manual config edit that works around this issue? Or is it somehow related to my build and does not affect other users?