diff --git a/pkg/rtc/signalling/signalhandler.go b/pkg/rtc/signalling/signalhandler.go index 740e65899..fff79c8e6 100644 --- a/pkg/rtc/signalling/signalhandler.go +++ b/pkg/rtc/signalling/signalhandler.go @@ -94,6 +94,8 @@ func (s *signalhandler) HandleMessage(msg proto.Message) error { reason = types.ParticipantCloseReasonUserRejected case livekit.DisconnectReason_AGENT_ERROR: reason = types.ParticipantCloseReasonAgentError + case livekit.DisconnectReason_SIP_TRUNK_FAILURE: + reason = types.ParticipantCloseReasonSIPTrunkFailure } s.params.Logger.Debugw("client leaving room", "reason", reason) s.params.Participant.HandleLeaveRequest(reason) diff --git a/pkg/rtc/types/interfaces.go b/pkg/rtc/types/interfaces.go index fa8e260b8..87b89ffe1 100644 --- a/pkg/rtc/types/interfaces.go +++ b/pkg/rtc/types/interfaces.go @@ -120,6 +120,7 @@ const ( ParticipantCloseReasonUserRejected ParticipantCloseReasonMoveFailed ParticipantCloseReasonAgentError + ParticipantCloseReasonSIPTrunkFailure ) func (p ParticipantCloseReason) String() string { @@ -182,6 +183,8 @@ func (p ParticipantCloseReason) String() string { return "MOVE_FAILED" case ParticipantCloseReasonAgentError: return "AGENT_ERROR" + case ParticipantCloseReasonSIPTrunkFailure: + return "SIP_TRUNK_FAILURE" default: return fmt.Sprintf("%d", int(p)) } @@ -221,6 +224,8 @@ func (p ParticipantCloseReason) ToDisconnectReason() livekit.DisconnectReason { return livekit.DisconnectReason_USER_REJECTED case ParticipantCloseReasonAgentError: return livekit.DisconnectReason_AGENT_ERROR + case ParticipantCloseReasonSIPTrunkFailure: + return livekit.DisconnectReason_SIP_TRUNK_FAILURE default: // the other types will map to unknown reason return livekit.DisconnectReason_UNKNOWN_REASON @@ -240,7 +245,8 @@ func IsIntentionalDisconnect(reason livekit.DisconnectReason) bool { livekit.DisconnectReason_MIGRATION, livekit.DisconnectReason_PARTICIPANT_REMOVED, livekit.DisconnectReason_ROOM_DELETED, - livekit.DisconnectReason_ROOM_CLOSED: + livekit.DisconnectReason_ROOM_CLOSED, + livekit.DisconnectReason_SIP_TRUNK_FAILURE: return true } return false