1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
use serde::Deserialize;

/// Message status
#[derive(Deserialize, PartialEq, Debug, Clone, Copy)]
pub enum Status {
  #[serde(rename = "UNKNOWN")]
  Unknown,
  #[serde(rename = "QUEUED")]
  Queued,
  #[serde(rename = "SCHEDULED")]
  Scheduled,
  #[serde(rename = "SENT_TO_SUPPLIER")]
  SentToSupplier,
  #[serde(rename = "DEVICE_ACK")]
  DeviceAck,
  #[serde(rename = "READ")]
  Read,
  #[serde(rename = "EXPIRED")]
  Expired,
  #[serde(rename = "STOPPED_BY_USER")]
  StoppedByUser,
  #[serde(rename = "STOPPED_BY_ADMIN")]
  StoppedByAdmin,
  #[serde(rename = "DELIVERY_FAILURE")]
  DeliveryFailure,
  #[serde(rename = "EMULATED")]
  Emulated,
  #[serde(rename = "INSUFFICIENT_ACCOUNT_BALANCE")]
  InsufficientAccountBalance,
  #[serde(rename = "VOLUME_LIMIT")]
  VolumeLimit,
  #[serde(rename = "VOLUME_LIMIT_DAILY")]
  VolumeLimitDaily,
  #[serde(rename = "VOLUME_LIMIT_MONTHLY")]
  VolumeLimitMonthly,
  #[serde(rename = "RECIPIENT_DOES_NOT_EXIST")]
  RecipientDoesNotExist,
  #[serde(rename = "ENCRYPTION_ACCESS_DENIED")]
  EncryptionAccessDenied,
  #[serde(rename = "ENCRYPTION_CONTENT_ERROR")]
  EncryptionContentError,
  #[serde(rename = "MEDIA_NOT_FOUND")]
  MediaNotFound,
  #[serde(rename = "MEDIA_SIZE_ERROR")]
  MediaSizeError,
  #[serde(rename = "MEDIA_CHECKSUM_FAILURE")]
  MediaChecksumFailure,
  #[serde(rename = "MEDIA_REJECTED_BY_SUPPLIER")]
  MediaRejectedBySupplier,
  #[serde(rename = "MEDIA_METADATA_ERROR")]
  MediaMetadataError,
  #[serde(rename = "ROUTING_ERROR")]
  RoutingError,
  #[serde(rename = "WHATSAPP_ACCOUNT_PAYMENT_ISSUE")]
  WhatsappAccountPaymentIssue,
  #[serde(rename = "WHATSAPP_RE_ENGAGEMENT_REQUIRED")]
  WhatsappReEngagementRequired,
  #[serde(rename = "WHATSAPP_SPAM_RATE_LIMIT_REACHED")]
  WhatsappSpamRateLimitReached,
  #[serde(rename = "WHATSAPP_SERVER_RATE_LIMIT")]
  WhatsappServerRateLimit,
  #[serde(rename = "WHATSAPP_HSM_NOT_AVAILABLE")]
  WhatsappHsmNotAvailable,
  #[serde(rename = "WHATSAPP_HSM_PARAM_COUNT_MISMATCH")]
  WhatsappHsmParamCountMismatch,
  #[serde(rename = "WHATSAPP_HSM_IS_MISSING")]
  WhatsappHsmIsMissing,
  #[serde(rename = "WHATSAPP_HSM_DOWNLOAD_FAILED")]
  WhatsappHsmDownloadFailed,
  #[serde(rename = "WHATSAPP_HSM_PACK_IS_MISSING")]
  WhatsappHsmPackIsMissing,
  #[serde(rename = "WHATSAPP_EXPERIMENTAL_NUMBER")]
  WhatsappExperimentalNumber,
  #[serde(rename = "WHATSAPP_TEMPLATE_TEXT_TOO_LONG")]
  WhatsappTemplateTextTooLong,
  #[serde(rename = "WHATSAPP_TEMPLATE_FORMAT_MISMATCH")]
  WhatsappTemplateFormatMismatch,
  #[serde(rename = "WHATSAPP_TEMPLATE_FORMATTING_POLICY_VIOLATED")]
  WhatsappTemplateFormattingPolicyViolated,
  #[serde(rename = "WHATSAPP_TEMPLATE_MEDIA_FORMAT_UNSUPPORTED")]
  WhatsappTemplateMediaFormatUnsupported,
  #[serde(rename = "WHATSAPP_PARAMETER_MISSING")]
  WhatsappParameterMissing,
  #[serde(rename = "WHATSAPP_PARAMETER_INVALID")]
  WhatsappParameterInvalid,
  #[serde(rename = "WHATSAPP_PARAMETER_NOT_REQUIRED")]
  WhatsappParameterNotRequired,
  #[serde(rename = "WHATSAPP_TEMPLATE_INVALID_URL")]
  WhatsappTemplateInvalidUrl,
  #[serde(rename = "WHATSAPP_TEMPLATE_INVALID_PHONE_NUMBER")]
  WhatsappTemplateInvalidPhoneNumber,
  #[serde(rename = "WHATSAPP_TEMPLATE_RECEIVER_NO_BUTTON_SUPPORT")]
  WhatsappTemplateReceiverNoButtonSupport,
}

impl Default for Status {
  fn default() -> Self {
    Self::Unknown
  }
}