-
Notifications
You must be signed in to change notification settings - Fork 12
Expand file tree
/
Copy pathSmsapiException.java
More file actions
279 lines (254 loc) · 10.4 KB
/
Copy pathSmsapiException.java
File metadata and controls
279 lines (254 loc) · 10.4 KB
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
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
package pl.smsapi;
public final class SmsapiException extends RuntimeException {
private int code;
private static String errorDefult = "999";
public int getCode() {
return code;
}
public SmsapiException(final String message) {
super(message);
}
public SmsapiException(final String message, final Throwable cause) {
super(message, cause);
}
public SmsapiException(final String message, final int code) {
super(message);
this.code = code;
}
public static Error createError(String number) {
return new Error(number);
}
public static Error createError(String number, String message) {
return new Error(number, message);
}
public static Error createError(String[] infoMsg)
{
if(infoMsg.length == 2){
return new Error(infoMsg[1]);
}
return new Error(errorDefult);
}
public static class Error {
private int number;
private String message;
public Error(String number) {
this.number = Integer.parseInt(number.trim());
this.message = new CodeResponse(this.number).getMessage();
}
public Error(String number, String message) {
this(number);
this.message = message;
}
public int getNumber() {
return number;
}
public String getMessage() {
return message;
}
@Override
public String toString() {
return Integer.toString(number) + ":" + message;
}
}
static class CodeResponse {
private Integer code;
public CodeResponse(Integer code)
{
this.code = code;
}
public String getMessage()
{
switch (code) {
case 8:
return "Błąd w odwołaniu (Prosimy zgłośić)";
case 11:
return "Zbyt długa lub brak wiadomości lub ustawiono parametr nounicode i pojawiły się znaki specjalne w wiadomości. Dla wysyłki VMS błąd oznacz brak pliku WAV lub treści TTS.";
case 12:
return "Wiadomość składa się z większej ilości części niż określono w parametrze &max_parts";
case 13:
return "Nieprawidłowy numer odbiorcy";
case 14:
return "Nieprawidłowe pole nadawcy";
case 17:
return "Nie można wysłać FLASH ze znakami specjalnymi";
case 18:
return "Nieprawidłowa liczba parametrów";
case 19:
return "Za dużo wiadomości w jednym odwołaniu";
case 20:
return "Nieprawidłowa liczba parametrów IDX";
case 21:
return "Wiadomość MMS ma za duży rozmiar (maksymalnie 300kB)";
case 22:
return "Błędny format SMIL";
case 23:
return "Błąd pobierania pliku dla wiadomości MMS lub VMS";
case 24:
return "Błędny format pobieranego pliku";
case 25:
return "Parametry &normalize oraz &datacoding nie mogą być używane jednocześnie";
case 26:
return "Za długi temat wiadomości. Temat może zawierać makstymalnie 30 znaków";
case 30:
return "Brak parametru UDH jak podany jest datacoding=bin";
case 31:
return "Błąd konwersji TTS";
case 32:
return "Nie można wysyłać wiadomości Eco, MMS i VMS na zagraniczne numery lub wysyłka wiadomości na numery zagraniczne została zablokowana (w przypadku wiadomości Pro";
case 33:
return "Brak poprawnych numerów";
case 36:
return "Nie można wysyłać wiadomości binarnych z ustawioną stopką";
case 40:
return "Brak grupy o podanej nazwie";
case 41:
return "Wybrana grupa jest pusta (brak kontaktów w grupie)";
case 50:
return "Nie można zaplanować wysyłki na więcej niż 3 miesiące w przyszłość";
case 51:
return "Ustawiono błędną godzinę wysyłki, wiadomość VMS mogą być wysyłane tylko pomiędzy godzinami 8 a 22 ub ustawiono kombinację parametrów try i interval powodującą możliwość próby połączenia po godzinie 22";
case 52:
return "Za dużo prób wysyłki wiadomości do jednego numeru (maksymalnie 10 prób w przeciągu 60sek do jednego numeru";
case 53:
return "Nieunikalny parametr idx. Została już przyjęta wiadomość z identyczną wartością parametru idx przy wykorzystaniu parametru &check_idx=1";
case 54:
return "Błędny format daty. Ustawiono sprawdzanie poprawności daty &date_validate=1";
case 55:
return "Brak numerów stacjonarnych w wysyłce i ustawiony parametr skip_gsm";
case 56:
return "Różnica pomiędzy datą wysyłki a datą wygaśnięcia nie może być mniejsza niż 1 godzina i większa niż 12 godzin";
case 101:
return "Niepoprawne lub brak danych autoryzacji. UWAGA! Hasło do API może być inne niż hasło do Panelu Klienta";
case 102:
return "Nieprawidłowy login lub hasło";
case 103:
return "Brak punków dla tego użytkownika";
case 104:
return "Brak szablonu";
case 105:
return "Błędny adres IP (włączony filtr IP dla interfejsu API)";
case 110:
return "Usługa (SMS, MMS, VMS lub HLR) nie jest dostępna na danym koncie";
case 200:
return "Nieudana próba wysłania wiadomości, prosimy ponowić odwołanie";
case 201:
return "Wewnętrzny błąd systemu (prosimy zgłosić)";
case 202:
return "Zbyt duża ilość jednoczesnych odwołań do serwisu, wiadomość nie została wysłana (prosimy odwołać się ponownie)";
case 300:
return "Nieprawidłowa wartość pola points (przy użyciu pola points jest wymagana wartość 1)";
case 301:
return "ID wiadomości nie istnieje";
case 400:
return "Nieprawidłowy ID statusu wiadomości";
case 401:
return "Błędny numer ID lub raport wygasł";
case 402:
return "Wiadomość niedostarczona z powodu zbyt długiego czasu niedostępność numeru ";
case 403:
return "Wiadomość została wysłana ale operator nie zwrócił jeszcze raportu doręczenia";
case 404:
return "Wiadomość dotarła do odbiorcy";
case 405:
return "Wiadomość niedostarczona (np.: błędny numer, numer niedostępny)";
case 406:
return "Błąd podczas wysyłki wiadomości - prosimy zgłosić";
case 408:
return "Brak raportu doręczenia dla wiadomości (wiadomość doręczona lub brak możliwości doręczenia)";
case 409:
return "Wiadomość czeka w kolejce na wysyłkę";
case 410:
return "Wiadomość przyjęta przez operatora";
case 411:
return "Wykonana była próba połączenia która nie została odebrana, połączenie zostanie ponowione.";
case 999:
return "Wewnętrzny błąd systemu (prosimy zgłosić)";
case 1000:
return "Akcja dostępna tylko dla użytkownika głównego";
case 1001:
return "Nieprawidłowa akcja (oczekiwane jedna z add_user, set_user, get_user,credits)";
case 1010:
return "Błąd dodawania podużytkownika";
case 1020:
return "Błąd edycji konta podużytkownika";
case 1021:
return "Brak danych do edycji, przynajmniej jeden parametr musi być edytowany";
case 1030:
return "Błąd pobierania danych użytkownika";
case 1032:
return "Nie istnieje podużytkownik o podanej nazwie dla danego użytkownika głównego";
case 1100:
return "Błąd danych podużytkownika";
case 1110:
return "Błędna nazwa tworzonego podużytkownika";
case 1111:
return "Nie podano nazwy tworzonego konta podużytkownika";
case 1112:
return "Nazwa konta podużytkownika za krótka (minimum 3 znaki";
case 1113:
return "Nazwa konta podużytkownika za długa, łączna długość nazwy podużytkownika wraz z prefiksem użytkownika głównego może mieć maksymalnie 32 znaki";
case 1114:
return "W nazwie podużytkownika pojawiły się nidozwolone znaki, dozwolone są litery [A – Z], cyfry [0 – 9] oraz znaki @, -, _ i";
case 1115:
return "Istnieje już podużytkownik o podanej nazwie";
case 1120:
return "Błąd hasła dla tworzonego konta podużytkownika";
case 1121:
return "Hasło dla tworzonego konta podużytkownika za krótkie";
case 1122:
return "Hasło dla tworzonego konta podużytkownika za długie";
case 1123:
return "Hasło powinno być zakodowane w MD5";
case 1130:
return "Błąd limitu punktów przydzielanego podużytkownikowi";
case 1131:
return "Parametr limit powinno zawierać wartość numeryczną";
case 1140:
return "Błąd limitu miesięcznego punktów przydzielanego podużytkownikowi";
case 1141:
return "Parametr month_limit powinno zawierać wartość numeryczną";
case 1150:
return "Błędna wartość parametru senders, dopuszczalne wartości dla tego parametru to 0 lub 1";
case 1160:
return "Błędna wartość parametru phonebook, dopuszczalne wartości dla tego parametru to 0 lub 1";
case 1170:
return "Błędna wartość parametru active, dopuszczalne wartości dla tego parametru to 0 lub 1";
case 1180:
return "Błąd parametru info";
case 1183:
return "Zawartość parametru info jest za długa";
case 1190:
return "Błąd hasła do interfejsu API dla konta podużytkownika";
case 1192:
return "Błędna długość hasła do interfejsu API dla konta podużytkownika (hasło zakodowane w md5 powinno mieć 32 znaki)";
case 1193:
return "Hasło do interfejsu powinno zostać podane w formie zakodowanej w md5";
case 2001:
return "Nieprawidłowa akcja";
case 2010:
return "Błąd dodawania pola nadawcy";
case 2030:
return "Błąd sprawdzania statusu pola nadawcy";
case 2031:
return "Nie istnieje pole nadawcy o podanej nazwie";
case 2060:
return "Błąd dodawania domyślnego pola nadawcy";
case 2061:
return "Pole nadawcy musi być aktywne, żeby ustawić je jako domyślne";
case 2062:
return "Pole nadawcy już jest ustawione jako domyślne";
case 2100:
return "Błąd przesyłanych danych";
case 2110:
return "Błąd nazwy pola nadawcy";
case 2111:
return "Brak nazwy dodawanego pola nadawcy (parametr &add jest pusty)";
case 2112:
return "Niepoprawna nazwa pola nadawcy (np. numer telefonu, zawierająca polskie i/lub specjalne znaki lub za długie), pole nadawcy może mieć maksymalnie 11 znaków, dopuszczalne znaki: a-z A-Z 0-9 - . [spacja]";
case 2115:
return "Pole o podanej nazwie już istnieje";
}
return "";
}
}
}