PJSIP shows wrong DIALSTATUS for outgoing call

DIALSTATUS is a function of HANGUPCAUSE.

19 is no answer, not busy,

31 is normal clearing.

480 is the correct status for 19,

You haven’t provided the outgoing leg signalling, so I can’t tell whether 19 is the correct code based on the received status, or are you saying the call wasn’t attempted at all, which would normally indicate a more serious problem than subscriber busy.

app_dial will not set a DIALSTATUS of BUSY unless it has seen at least one cause 17, so I don’t see how you can get 19 and busy, unless another destination was called in parallel and returned busy.