use serde::{Deserialize, Serialize};
use serde_repr::{Deserialize_repr, Serialize_repr};
#[derive(Serialize, Deserialize, Clone)]
#[repr(u16)]
pub enum Direction {
#[serde(rename = "inbound")]
Inbound,
#[serde(rename = "outbound")]
Outbound,
}
#[derive(Serialize_repr, Deserialize_repr, Clone, strum::IntoStaticStr)]
#[repr(u16)]
pub enum SIPStatus {
Trying = 100,
Ringing = 180,
CallForwarding = 181,
Queued = 182,
SessionInProgress = 183,
EarlyDialogTerminated = 199,
Ok = 200,
Accepted = 202,
NoNotification = 204,
MultipleChoices = 300,
MovedPermanently = 301,
MovedTemporarily = 302,
UseProxy = 305,
AlternativeService = 308,
BadRequest = 400,
Unauthorized = 401,
PaymentRequired = 402,
Forbidden = 403,
NotFound = 404,
MethodNotAllowed = 405,
NotAcceptable = 406,
ProxyAuthenticationRequired = 407,
RequestTimeout = 408,
Conflict = 409,
Gone = 410,
LengthRequired = 411,
ConditionalRequestFailed = 412,
RequestEntityTooLarge = 413,
RequestURITooLong = 414,
UnsupportedMediaType = 415,
UnsupportedURIScheme = 416,
UnknownResourcePriority = 417,
BadExtension = 420,
ExtensionRequired = 421,
SessionIntervalTooSmall = 422,
IntervalTooBrief = 423,
BadLocationInformation = 424,
BadAlertMessage = 425,
UseIdentityHeader = 428,
ProvideReferrerIdentity = 429,
FlowFailed = 430,
AnonymityDisallowed = 433,
BadIdentityInfo = 436,
UnsupportedCertificate = 437,
InvalidIdentityHeader = 438,
FirstHopLacksOutboundSupport = 439,
MaxBreadthExceeded = 440,
BadInfoPackage = 469,
ConsentNeeded = 470,
TemporarilyUnavailable = 480,
CallDoesNotExist = 481,
LoopDetected = 482,
TooManyHops = 483,
AddressIncomplete = 484,
Ambiguous = 485,
BusyHere = 486,
RequestTerminated = 487,
NotAcceptableHere = 488,
BadEvent = 489,
RequestPending = 491,
Undecipherable = 493,
SecurityAgreementRequired = 494,
InternalServerError = 500,
NotImplemented = 501,
BadGateway = 502,
ServiceUnavailable = 503,
ServerTimeout = 504,
VersionNotSupported = 505,
MessageTooLarge = 513,
PushNotificationServiceNotSupported = 555,
PreconditionFailure = 580,
BusyEverywhere = 600,
Decline = 603,
DoesNotExistAnywhere = 604,
NotAcceptableGlobal = 606,
Unwanted = 607,
Rejected = 608,
}