Skip to content

Commit 7196623

Browse files
authored
Propagate original SIP response status text. (#421)
1 parent 5cc1f17 commit 7196623

File tree

2 files changed

+12
-3
lines changed

2 files changed

+12
-3
lines changed

pkg/sip/outbound.go

Lines changed: 8 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -777,13 +777,19 @@ authLoop:
777777
case sip.StatusOK:
778778
break authLoop
779779
default:
780-
return nil, fmt.Errorf("unexpected status from INVITE response: %w", &livekit.SIPStatus{Code: livekit.SIPStatusCode(resp.StatusCode)})
780+
return nil, fmt.Errorf("unexpected status from INVITE response: %w", &livekit.SIPStatus{
781+
Code: livekit.SIPStatusCode(resp.StatusCode),
782+
Status: resp.Reason,
783+
})
781784
case sip.StatusBadRequest,
782785
sip.StatusNotFound,
783786
sip.StatusTemporarilyUnavailable,
784787
sip.StatusNotAcceptableHere,
785788
sip.StatusBusyHere:
786-
err := &livekit.SIPStatus{Code: livekit.SIPStatusCode(resp.StatusCode)}
789+
err := &livekit.SIPStatus{
790+
Code: livekit.SIPStatusCode(resp.StatusCode),
791+
Status: resp.Reason,
792+
}
787793
if body := resp.Body(); len(body) != 0 {
788794
err.Status = string(body)
789795
} else if s := resp.GetHeader("X-Twillio-Error"); s != nil {

pkg/sip/protocol.go

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -263,7 +263,10 @@ func sendRefer(ctx context.Context, c Signaling, req *sip.Request, stop <-chan s
263263
case sip.StatusOK, 202: // 202 is Accepted
264264
return resp, nil
265265
default:
266-
return resp, &livekit.SIPStatus{Code: livekit.SIPStatusCode(resp.StatusCode)}
266+
return resp, &livekit.SIPStatus{
267+
Code: livekit.SIPStatusCode(resp.StatusCode),
268+
Status: resp.Reason,
269+
}
267270
}
268271
}
269272

0 commit comments

Comments
 (0)