cal_billing/
code_deck.rs

1use serde::{Deserialize, Serialize};
2
3
4#[derive(Serialize, Deserialize, Clone)]
5#[serde(rename_all = "camelCase")]
6pub struct CodeDeck {
7    pub name: String,
8    pub description: String,
9    pub codes: Option<Vec<Code>>,
10}
11
12#[derive(Serialize, Deserialize, Clone)]
13#[serde(rename_all = "camelCase")]
14pub struct Code {
15    #[serde(rename = "_id")]
16    pub id: String,
17    pub caller: String,
18    pub called: String,
19    pub code: String,
20    pub category: String,
21    pub country: String,
22    pub country_code: String,
23}
24
25#[derive(Serialize, Deserialize, Clone)]
26#[serde(rename_all = "camelCase")]
27pub struct CodeCache {
28    pub code: &'static str,
29    pub category: Category,
30    pub country: Country,
31    pub country_code: CountryCode,
32}
33
34#[derive(Serialize, Deserialize, Clone)]
35pub enum Category {
36    CallsAustralia,
37    CallsAustria,
38    CallsBelgium,
39    CallsBulgaria,
40    CallsCanada,
41    CallsCroatia,
42    CallsCzechRepublic,
43    CallsDenmark,
44    CallsEstonia,
45    CallsFinland,
46    CallsFrance,
47    CallsGermany,
48    CallsGreece,
49    CallsHongKong,
50    CallsHungary,
51    CallsIngress,
52    CallsInternational,
53    CallsIreland,
54    CallsItaly,
55    CallsJapan,
56    CallsLatvia,
57    CallsLithuania,
58    CallsLuxembourg,
59    CallsNetherlands,
60    CallsNewZealand,
61    CallsNorway,
62    CallsPoland,
63    CallsPortugal,
64    CallsPuertoRico,
65    CallsRomania,
66    CallsSingapore,
67    CallsSlovakia,
68    CallsSlovenia,
69    CallsSpain,
70    CallsSweden,
71    CallsSwitzerland,
72    CallsTurkey,
73    CallsUnitedKingdom,
74    CallsUnitedStates,
75    MessagingWA
76}
77#[derive(Serialize, Deserialize, Clone)]
78pub enum CountryCode {
79    AB,
80    AC,
81    AD,
82    AE,
83    AF,
84    AG,
85    AI,
86    AL,
87    AM,
88    AN,
89    AO,
90    AQ,
91    AR,
92    AS,
93    AT,
94    AU,
95    AW,
96    AZ,
97    BA,
98    BB,
99    BD,
100    BE,
101    BF,
102    BG,
103    BH,
104    BI,
105    BJ,
106    BM,
107    BN,
108    BO,
109    BR,
110    BS,
111    BT,
112    BW,
113    BY,
114    BZ,
115    CA,
116    CD,
117    CF,
118    CG,
119    CH,
120    CI,
121    CK,
122    CL,
123    CM,
124    CN,
125    CO,
126    CR,
127    CU,
128    CV,
129    CY,
130    CZ,
131    DE,
132    DG,
133    DJ,
134    DK,
135    DM,
136    DO,
137    DZ,
138    EC,
139    EE,
140    EG,
141    ER,
142    ES,
143    ET,
144    FI,
145    FJ,
146    FK,
147    FM,
148    FO,
149    FR,
150    GA,
151    GB,
152    GD,
153    GE,
154    GF,
155    GH,
156    GI,
157    GL,
158    GM,
159    GN,
160    GO,
161    GP,
162    GQ,
163    GR,
164    GT,
165    GU,
166    GW,
167    GY,
168    HK,
169    HN,
170    HR,
171    HT,
172    HU,
173    ID,
174    IE,
175    II,
176    IL,
177    IN,
178    IQ,
179    IR,
180    IS,
181    IT,
182    JM,
183    JO,
184    JP,
185    KE,
186    KG,
187    KH,
188    KI,
189    KM,
190    KN,
191    KP,
192    KR,
193    KW,
194    KY,
195    KZ,
196    LA,
197    LB,
198    LC,
199    LI,
200    LK,
201    LR,
202    LS,
203    LT,
204    LU,
205    LV,
206    LY,
207    MA,
208    MC,
209    MD,
210    ME,
211    MG,
212    MH,
213    MK,
214    ML,
215    MM,
216    MN,
217    MO,
218    MP,
219    MQ,
220    MR,
221    MS,
222    MT,
223    MU,
224    MV,
225    MW,
226    MX,
227    MY,
228    MZ,
229    NA,
230    NC,
231    NE,
232    NF,
233    NG,
234    NI,
235    NL,
236    NO,
237    NP,
238    NR,
239    NU,
240    NZ,
241    OM,
242    PA,
243    PE,
244    PF,
245    PG,
246    PH,
247    PK,
248    PL,
249    PM,
250    PR,
251    PS,
252    PT,
253    PW,
254    PY,
255    QA,
256    RE,
257    RO,
258    ROW,
259    RS,
260    RU,
261    RW,
262    SA,
263    SB,
264    SC,
265    SD,
266    SE,
267    SG,
268    SH,
269    SI,
270    SK,
271    SL,
272    SM,
273    SN,
274    SO,
275    SR,
276    SS,
277    ST,
278    SV,
279    SX,
280    SY,
281    SZ,
282    TC,
283    TD,
284    TG,
285    TH,
286    TJ,
287    TK,
288    TL,
289    TM,
290    TN,
291    TO,
292    TR,
293    TT,
294    TV,
295    TW,
296    TZ,
297    UA,
298    UG,
299    US,
300    UY,
301    UZ,
302    VA,
303    VC,
304    VE,
305    VG,
306    VI,
307    VN,
308    VU,
309    WF,
310    WS,
311    XK,
312    YE,
313    ZA,
314    ZM,
315    ZW
316}
317#[derive(Serialize, Deserialize, Clone)]
318pub enum Country {
319    #[serde(rename = "St Vincent and Grenadines")]
320    StVincentAndGrenadines,
321    #[serde(rename = "North Yemen")]
322    NorthYemen,
323    #[serde(rename = "North American")]
324    NorthAmerican,
325    #[serde(rename = "Ivory Coast")]
326    IvoryCoast,
327    #[serde(rename = "Garuda")]
328    Garuda,
329    #[serde(rename = "Global Satellite")]
330    GlobalSatellite,
331    #[serde(rename = "Mayotte Island")]
332    MayotteIsland,
333    #[serde(rename = "Afghanistan")]
334    Afghanistan,
335    #[serde(rename = "Ellipso")]
336    Ellipso,
337    #[serde(rename = "Abkhazia")]
338    Abkhazia,
339    #[serde(rename = "Albania")]
340    Albania,
341    #[serde(rename = "Algeria")]
342    Algeria,
343    #[serde(rename = "American Samoa")]
344    AmericanSamoa,
345    #[serde(rename = "Andorra")]
346    Andorra,
347    #[serde(rename = "Angola")]
348    Angola,
349    #[serde(rename = "Anguilla")]
350    Anguilla,
351    #[serde(rename = "Antarctic")]
352    Antarctic,
353    #[serde(rename = "Antigua and Barbuda")]
354    AntiguaAndBarbuda,
355    #[serde(rename = "Argentina")]
356    Argentina,
357    #[serde(rename = "Armenia")]
358    Armenia,
359    #[serde(rename = "Aruba")]
360    Aruba,
361    #[serde(rename = "Ascension Island")]
362    AscensionIsland,
363    #[serde(rename = "Australia")]
364    Australia,
365    #[serde(rename = "Austria")]
366    Austria,
367    #[serde(rename = "Azerbaijan")]
368    Azerbaijan,
369    #[serde(rename = "Bahamas")]
370    Bahamas,
371    #[serde(rename = "Bahrain")]
372    Bahrain,
373    #[serde(rename = "Bangladesh")]
374    Bangladesh,
375    #[serde(rename = "Barbados")]
376    Barbados,
377    #[serde(rename = "Belarus")]
378    Belarus,
379    #[serde(rename = "Belgium")]
380    Belgium,
381    #[serde(rename = "Belize")]
382    Belize,
383    #[serde(rename = "Benin")]
384    Benin,
385    #[serde(rename = "Bermuda")]
386    Bermuda,
387    #[serde(rename = "Bhutan")]
388    Bhutan,
389    #[serde(rename = "Bolivia")]
390    Bolivia,
391    #[serde(rename = "Bosnia and Herzegovina")]
392    BosniaAndHerzegovina,
393    #[serde(rename = "Botswana")]
394    Botswana,
395    #[serde(rename = "Brazil")]
396    Brazil,
397    #[serde(rename = "British Virgin Islands")]
398    BritishVirginIslands,
399    #[serde(rename = "Brunei Darussalam")]
400    BruneiDarussalam,
401    #[serde(rename = "Bulgaria")]
402    Bulgaria,
403    #[serde(rename = "Burkina Faso")]
404    BurkinaFaso,
405    #[serde(rename = "Burundi")]
406    Burundi,
407    #[serde(rename = "Cambodia")]
408    Cambodia,
409    #[serde(rename = "Cameroon")]
410    Cameroon,
411    #[serde(rename = "Canada")]
412    Canada,
413    #[serde(rename = "Cape Verde")]
414    CapeVerde,
415    #[serde(rename = "Cayman Islands")]
416    CaymanIslands,
417    #[serde(rename = "Central African Republic")]
418    CentralAfricanRepublic,
419    #[serde(rename = "Chad")]
420    Chad,
421    #[serde(rename = "Chile")]
422    Chile,
423    #[serde(rename = "Colombia")]
424    Colombia,
425    #[serde(rename = "Comoros")]
426    Comoros,
427    #[serde(rename = "Congo")]
428    Congo,
429    #[serde(rename = "Cook Islands")]
430    CookIslands,
431    #[serde(rename = "Costa Rica")]
432    CostaRica,
433    #[serde(rename = "Croatia")]
434    Croatia,
435    #[serde(rename = "Cuba")]
436    Cuba,
437    #[serde(rename = "Cyprus")]
438    Cyprus,
439    #[serde(rename = "Czech Republic")]
440    CzechRepublic,
441    #[serde(rename = "Democratic Republic of Timor")]
442    DemocraticRepublicofTimor,
443    #[serde(rename = "Denmark")]
444    Denmark,
445    #[serde(rename = "Diego Garcia")]
446    DiegoGarcia,
447    #[serde(rename = "Djibouti")]
448    Djibouti,
449    #[serde(rename = "Dominica")]
450    Dominica,
451    #[serde(rename = "Dominican Republic")]
452    DominicanRepublic,
453    #[serde(rename = "DR of Congo")]
454    DRofCongo,
455    #[serde(rename = "Ecuador")]
456    Ecuador,
457    #[serde(rename = "Egypt")]
458    Egypt,
459    #[serde(rename = "El Salvador")]
460    ElSalvador,
461    #[serde(rename = "Equatorial Guinea")]
462    EquatorialGuinea,
463    #[serde(rename = "Eritrea")]
464    Eritrea,
465    #[serde(rename = "Estonia")]
466    Estonia,
467    #[serde(rename = "Ethiopia")]
468    Ethiopia,
469    #[serde(rename = "Falkland Islands")]
470    FalklandIslands,
471    #[serde(rename = "Faroe Islands")]
472    FaroeIslands,
473    #[serde(rename = "Fiji")]
474    Fiji,
475    #[serde(rename = "Finland")]
476    Finland,
477    #[serde(rename = "France")]
478    France,
479    #[serde(rename = "French Guiana")]
480    FrenchGuiana,
481    #[serde(rename = "French Polynesia")]
482    FrenchPolynesia,
483    #[serde(rename = "Gabon")]
484    Gabon,
485    #[serde(rename = "Gambia")]
486    Gambia,
487    #[serde(rename = "Georgia")]
488    Georgia,
489    #[serde(rename = "Germany")]
490    Germany,
491    #[serde(rename = "Ghana")]
492    Ghana,
493    #[serde(rename = "Gibraltar")]
494    Gibraltar,
495    #[serde(rename = "Greece")]
496    Greece,
497    #[serde(rename = "Greenland")]
498    Greenland,
499    #[serde(rename = "Grenada")]
500    Grenada,
501    #[serde(rename = "Guadeloupe")]
502    Guadeloupe,
503    #[serde(rename = "Guam")]
504    Guam,
505    #[serde(rename = "Guatemala")]
506    Guatemala,
507    #[serde(rename = "Guinea")]
508    Guinea,
509    #[serde(rename = "Guyana")]
510    Guyana,
511    #[serde(rename = "Haiti")]
512    Haiti,
513    #[serde(rename = "Honduras")]
514    Honduras,
515    #[serde(rename = "Hong Kong")]
516    HongKong,
517    #[serde(rename = "Hungary")]
518    Hungary,
519    #[serde(rename = "Iceland")]
520    Iceland,
521    #[serde(rename = "India")]
522    India,
523    #[serde(rename = "Indonesia")]
524    Indonesia,
525    #[serde(rename = "Iran")]
526    Iran,
527    #[serde(rename = "Iraq")]
528    Iraq,
529    #[serde(rename = "Ireland")]
530    Ireland,
531    #[serde(rename = "Iridium")]
532    Iridium,
533    #[serde(rename = "Israel")]
534    Israel,
535    #[serde(rename = "Italy")]
536    Italy,
537    #[serde(rename = "Jamaica")]
538    Jamaica,
539    #[serde(rename = "Japan")]
540    Japan,
541    #[serde(rename = "Jordan")]
542    Jordan,
543    #[serde(rename = "Kazakhstan")]
544    Kazakhstan,
545    #[serde(rename = "Kenya")]
546    Kenya,
547    #[serde(rename = "Kiribati")]
548    Kiribati,
549    #[serde(rename = "Kosovo")]
550    Kosovo,
551    #[serde(rename = "Kuwait")]
552    Kuwait,
553    #[serde(rename = "Kyrgyzstan")]
554    Kyrgyzstan,
555    #[serde(rename = "Laos")]
556    Laos,
557    #[serde(rename = "Latvia")]
558    Latvia,
559    #[serde(rename = "Lebanon")]
560    Lebanon,
561    #[serde(rename = "Lesotho")]
562    Lesotho,
563    #[serde(rename = "Liberia")]
564    Liberia,
565    #[serde(rename = "Libya")]
566    Libya,
567    #[serde(rename = "Liechtenstein")]
568    Liechtenstein,
569    #[serde(rename = "Lithuania")]
570    Lithuania,
571    #[serde(rename = "Luxembourg")]
572    Luxembourg,
573    #[serde(rename = "Macau")]
574    Macau,
575    #[serde(rename = "Macedonia")]
576    Macedonia,
577    #[serde(rename = "Madagascar")]
578    Madagascar,
579    #[serde(rename = "Malawi")]
580    Malawi,
581    #[serde(rename = "Malaysia")]
582    Malaysia,
583    #[serde(rename = "Maldives")]
584    Maldives,
585    #[serde(rename = "Mali")]
586    Mali,
587    #[serde(rename = "Malta")]
588    Malta,
589    #[serde(rename = "Mariana Islands")]
590    MarianaIslands,
591    #[serde(rename = "Marshall Islands")]
592    MarshallIslands,
593    #[serde(rename = "Martinique")]
594    Martinique,
595    #[serde(rename = "Mauritania")]
596    Mauritania,
597    #[serde(rename = "Mauritius")]
598    Mauritius,
599    #[serde(rename = "Mexico")]
600    Mexico,
601    #[serde(rename = "Micronesia")]
602    Micronesia,
603    #[serde(rename = "Moldova")]
604    Moldova,
605    #[serde(rename = "Monaco")]
606    Monaco,
607    #[serde(rename = "Mongolia")]
608    Mongolia,
609    #[serde(rename = "Montenegro")]
610    Montenegro,
611    #[serde(rename = "Montserrat")]
612    Montserrat,
613    #[serde(rename = "Morocco")]
614    Morocco,
615    #[serde(rename = "Mozambique")]
616    Mozambique,
617    #[serde(rename = "Myanmar")]
618    Myanmar,
619    #[serde(rename = "Namibia")]
620    Namibia,
621    #[serde(rename = "Nauru")]
622    Nauru,
623    #[serde(rename = "Nepal")]
624    Nepal,
625    #[serde(rename = "Netherlands")]
626    Netherlands,
627    #[serde(rename = "Netherlands Antilles")]
628    NetherlandsAntilles,
629    #[serde(rename = "New Caledonia")]
630    NewCaledonia,
631    #[serde(rename = "New Zealand")]
632    NewZealand,
633    #[serde(rename = "Nicaragua")]
634    Nicaragua,
635    #[serde(rename = "Niger")]
636    Niger,
637    #[serde(rename = "Nigeria")]
638    Nigeria,
639    #[serde(rename = "Niue")]
640    Niue,
641    #[serde(rename = "Norfolk Island")]
642    NorfolkIsland,
643    #[serde(rename = "North Korea")]
644    NorthKorea,
645    #[serde(rename = "Norway")]
646    Norway,
647    #[serde(rename = "Oman")]
648    Oman,
649    #[serde(rename = "Pakistan")]
650    Pakistan,
651    #[serde(rename = "Palau")]
652    Palau,
653    #[serde(rename = "Palestine")]
654    Palestine,
655    #[serde(rename = "Panama")]
656    Panama,
657    #[serde(rename = "Papua New Guinea")]
658    PapuaNewGuinea,
659    #[serde(rename = "Paraguay")]
660    Paraguay,
661    #[serde(rename = "Peru")]
662    Peru,
663    #[serde(rename = "Philippines")]
664    Philippines,
665    #[serde(rename = "Poland")]
666    Poland,
667    #[serde(rename = "Portugal")]
668    Portugal,
669    #[serde(rename = "Puerto Rico")]
670    PuertoRico,
671    #[serde(rename = "Qatar")]
672    Qatar,
673    #[serde(rename = "Rest of World")]
674    RestofWorld,
675    #[serde(rename = "Reunion Island")]
676    ReunionIsland,
677    #[serde(rename = "Romania")]
678    Romania,
679    #[serde(rename = "Russia")]
680    Russia,
681    #[serde(rename = "Rwanda")]
682    Rwanda,
683    #[serde(rename = "Samoa")]
684    Samoa,
685    #[serde(rename = "San Marino")]
686    SanMarino,
687    #[serde(rename = "Sao Tome and Principe")]
688    SaoTomeAndPrincipe,
689    #[serde(rename = "Saudi Arabia")]
690    SaudiArabia,
691    #[serde(rename = "Senegal")]
692    Senegal,
693    #[serde(rename = "Serbia")]
694    Serbia,
695    #[serde(rename = "Seychelles")]
696    Seychelles,
697    #[serde(rename = "Sierra Leone")]
698    SierraLeone,
699    #[serde(rename = "Singapore")]
700    Singapore,
701    #[serde(rename = "Sint Maarten")]
702    SintMaarten,
703    #[serde(rename = "Slovakia")]
704    Slovakia,
705    #[serde(rename = "Slovenia")]
706    Slovenia,
707    #[serde(rename = "Solomon Islands")]
708    SolomonIslands,
709    #[serde(rename = "Somalia")]
710    Somalia,
711    #[serde(rename = "South Africa")]
712    SouthAfrica,
713    #[serde(rename = "South Korea")]
714    SouthKorea,
715    #[serde(rename = "South Sudan")]
716    SouthSudan,
717    #[serde(rename = "Spain")]
718    Spain,
719    #[serde(rename = "Sri Lanka")]
720    SriLanka,
721    #[serde(rename = "St. Helena")]
722    StHelena,
723    #[serde(rename = "St. Lucia")]
724    StLucia,
725    #[serde(rename = "St. Pierre and Miquelon")]
726    StPierreAndMiquelon,
727    #[serde(rename = "St.Kitts And Nevis")]
728    StKittsAndNevis,
729    #[serde(rename = "Sudan")]
730    Sudan,
731    #[serde(rename = "Suriname")]
732    Suriname,
733    #[serde(rename = "Swaziland")]
734    Swaziland,
735    #[serde(rename = "Sweden")]
736    Sweden,
737    #[serde(rename = "Switzerland")]
738    Switzerland,
739    #[serde(rename = "Syria")]
740    Syria,
741    #[serde(rename = "Taiwan")]
742    Taiwan,
743    #[serde(rename = "Tajikistan")]
744    Tajikistan,
745    #[serde(rename = "Tanzania")]
746    Tanzania,
747    #[serde(rename = "Thailand")]
748    Thailand,
749    #[serde(rename = "Togo")]
750    Togo,
751    #[serde(rename = "Tokelau")]
752    Tokelau,
753    #[serde(rename = "Tonga")]
754    Tonga,
755    #[serde(rename = "Trinidad and Tobago")]
756    TrinidadAndTobago,
757    #[serde(rename = "Tunisia")]
758    Tunisia,
759    #[serde(rename = "Turkey")]
760    Turkey,
761    #[serde(rename = "Turkmenistan")]
762    Turkmenistan,
763    #[serde(rename = "Turks and Caicos Islands")]
764    TurksAndCaicosIslands,
765    #[serde(rename = "Tuvalu")]
766    Tuvalu,
767    #[serde(rename = "Uganda")]
768    Uganda,
769    #[serde(rename = "Ukraine")]
770    Ukraine,
771    #[serde(rename = "United Arab Emirate")]
772    UnitedArabEmirate,
773    #[serde(rename = "United Arab Emirates")]
774    UnitedArabEmirates,
775    #[serde(rename = "United Kingdom")]
776    UnitedKingdom,
777    #[serde(rename = "United States")]
778    UnitedStates,
779    #[serde(rename = "USA")]
780    USA,
781    #[serde(rename = "Uruguay")]
782    Uruguay,
783    #[serde(rename = "US Virgin Island")]
784    USVirginIsland,
785    #[serde(rename = "Uzbekistan")]
786    Uzbekistan,
787    #[serde(rename = "Vanuatu")]
788    Vanuatu,
789    #[serde(rename = "Vatican")]
790    Vatican,
791    #[serde(rename = "Venezuela")]
792    Venezuela,
793    #[serde(rename = "Vietnam")]
794    Vietnam,
795    #[serde(rename = "Voxbone")]
796    Voxbone,
797    #[serde(rename = "Wallis and Futuna Islands")]
798    WallisAndFutunaIslands,
799    #[serde(rename = "Yemen")]
800    Yemen,
801    #[serde(rename = "Zambia")]
802    Zambia,
803    #[serde(rename = "Zimbabwe")]
804    Zimbabwe,
805}