private TurnMessage GetErrorResponse(ErrorCode errorCode, SocketAsyncEventArgs e)
{
MessageType? messageType = TurnMessage.SafeGetMessageType(e.Buffer, e.Offset, e.Count);
TransactionId id = TurnMessage.SafeGetTransactionId(e.Buffer, e.Offset, e.Count);
if (messageType != null && id != null)
{
return new TurnMessage()
{
MessageType = ((MessageType)messageType).GetErrorResponseType(),
TransactionId = id,
ErrorCodeAttribute = new ErrorCodeAttribute()
{
ErrorCode = (int)errorCode,
ReasonPhrase = errorCode.GetReasonPhrase(),
},
};
}
return null;
}