Отговори при грешка
Hotspot API връща два вида резултат: неуспешно удостоверяване (HTTP 401) и успешен отговор (HTTP 200). Празният списък с гости не е грешка. По-долу са ситуациите, с които може да се сблъскате, и какво да направите при всяка от тях.
HTTP кодове за състояние#
| Код | Тяло | Значение и какво да направите |
|---|---|---|
200 | {"success": 1, "otelde": [...]} | Успех. Обработете списъка. |
200 | {"success": 1, "otelde": []} | Успех; в хотела няма настанени гости. Вижте бележката за празни списъци по-долу. |
401 | {"success": 0} | Заглавката ApiKey липсва или ключът не е разпознат. Не повтаряйте; проверете ключа и уведомете администратора. |
404 | Страница за грешка | Грешен път. Проверете дали пътят е точно /public/json/customer/inhotel. |
405 | Страница за грешка | Използван е метод, различен от POST (напр. GET от браузър). |
5xx / изтекло време | — | Временна грешка на сървъра или мрежата. Повторете с нарастващи интервали (30 с, 1 мин, 5 мин) и междувременно продължете да използвате последния успешно получен списък. |
Празен списък#
otelde: [] означава, че в хотела няма настанени гости, което е нормално за малки хотели извън сезона. Списък, който при предишната заявка е бил пълен и изведнъж е празен, обаче обикновено сочи оперативна грешка от страна на хотела (погрешно масово напускане, промяна в статуса на резервации). Преди да затворите всички Wi-Fi акаунти, уверете се, че списъкът е върнат празен при две последователни заявки.
Повторни опити и време за изчакване#
- Използвайте време за изчакване на заявката от 10 секунди; дори при големи хотели списъкът се връща в този срок.
- Повтаряйте при
5xxи мрежови грешки; не повтаряйте при401,404или405, които са грешки в конфигурацията. - Докато заявките са неуспешни, пазете последния успешно получен списък. Затваряйте акаунти само на гости, които са отпаднали от списъка в успешен отговор.
- Броете последователните неуспехи и уведомявайте администратора при преминаване на праг (напр. 15 минути).
Чести ситуации#
| Ситуация | Вероятна причина | Какво да направите |
|---|---|---|
| Гостът не е в списъка | Рецепцията не е настанила госта, резервацията е анулирана, гостът не е отбелязан като „в хотела“ или вече е напуснал. | Покажете в портала „номерът на стаята и фамилията не съвпадат“ и насочете госта към рецепцията. Не е нужно да изтегляте списъка отново; гостът ще се появи при следващата синхронизация. |
| Няколко записа за една стая | В стаята са настанени повече от един гост; всеки е отделен запис. | Нормално е. Отваряйте акаунти за всеки гост (unique). |
identityNumber е празно | Гостът е регистриран без данни за самоличност. | За съпоставяне използвайте фамилия + дата на раждане; оставете полето празно в записа по Закон № 5651 и го свържете с unique. |
roomName не съвпада | Гостът е въвел „0104“ или „Стая 104“ вместо „104“; стойността е низ. | Нормализирайте двете страни преди сравнението; не преобразувайте в число. |
checkout е в миналото, но гостът все още е в списъка | Гостът е удължил престоя си или напуска по-късно и рецепцията все още не го е отразила. | Оставете достъпа отворен, докато гостът е в списъка; обновете края на сесията, когато checkout се промени. |