System rezerwacji

Best of Five to innowacyjny system do obsługi turniejów i lig sprawdzający się już w kilkudziesięciu klubach w całej Polsce! Rozwój funkcjonalności systemu ligowego polegającego na dowolnym umawianiu się graczy we własnym zakresie, spowodował potrzebę integracji tego procesu z rezerwacją kortu. Oczywiście, grzechem byłoby nie wykorzystać potencjału naszego rozwiązania, nie udostępniając możliwości rezerwacji kortów innym graczom w przystępny sposób - za pomocą aplikacji mobilnych.
Zapraszamy do integracji!

PS Strona została przygotowana jako przewodnik dla programistów, którzy mogą dokonać integracji. Specyfikacja opisuje możliwości systemu, a przykłady prezentują działanie i umożliwiają testowanie przygotowanej integracji systemów.

Dlaczego warto?
Best of Five to ponad 22 tysiące graczy z całej Polski, każdego dnia rejestrujący kilkaset rozgrywanych meczów. Otwórz się na ten potencjał!

Po dokonaniu rezerwacji na adres e-mail klubu wysyłana jest wiadomość z danymi gracza oraz przyciskami: “Potwierdź” lub “Odrzuć”. W zależności od dostępności i decyzji czy dokonać rezerwacji należy wybrać odpowiedni przycisk. W przeciągu kilku sekund gracz dostanie informację wprost na swój telefon. Jednak ze względu na brak wymiany informacji, proponujemy, aby rozwiązanie to traktować testowo.
Dokonane rezerwacje są wysyłane poprzez wiadomość e-mail na adres klubu. Jednak udostępniając informację o dostępności kortów, będziemy mogli pokazać graczom, które terminy są już zajęte. Tym samym, całkowicie zostaną wyeliminowane zapytania o dostępność kortów - koniec z telefonowaniem na recepcję!

Specyfikacja

Informacje wstępne

Dane wejściowe - przesyłane wraz z żądaniem (metodą POST)

Nazwa Opis Wartość domyślna
Parametry wspólne
action Rodzaj akcji / żądania. (parametr)
hash Zabezpieczenie tworzone na podstawie klucza do API (indywidualnego dla każdego klubu) oraz przesyłanych parametrów - patrz źródło przykładu, linia 10. (parametr)
discipline Dyscyplina (dla klubów oferujących różne usługi), dostępne wartości: squash, badminton, tabletenis, tenis. squash
duration Długość rezerwacji w minutach. 60
Pobieranie dostępności całodniowej - action = getAvailability.
date Data dla której będzie pobierana dostępność w formacie YYYY-MM-DD. (parametr)
Pobieranie dostępności kortów dla konkretnej godziny - action = getCourtsAvailability.
datetime Data i godzina dla której będzie pobierana dostępność w formacie YYYY-MM-DD HH:MM. (parametr)

Dane wyjściowe - oczekiwane jako rezultat (format JSON)

Nazwa Opis
Pobieranie dostępności całodniowej - action = getAvailability. Przykład całej odpowiedzi w sekcji "Pobrane dane".
MM:HH Godzina dostępności - klucz w tablicy odpowiedzi.
status Status może przyjmować następujące wartości:
0 - brak kortów;
5 - niska dostępność (oznaczony poprzez kolor żółty) - wartość opcjonalna, do decyzji klubu;
10 - dostępne korty.
price Cena za kort w tej godzinie, wartość w groszach, liczba całkowita, tj. 30 zł = 3000 gr. Wartość opcjonalna.
Pobieranie dostępności kortów dla konkretnej godziny - action = getCourtsAvailability.
{int/string} Identyfikator kortu wykorzystywany przy dokonywaniu rezerwacji - klucz w tablicy odpowiedzi.
name Nazwa kortu, np. Kort 1 lub Kort szklany.
price Cena za kort w tej godzinie, wartość w groszach, cliczba całkowita, tj. 30 zł = 3000 gr. Wartość opcjonalna.

Przykład i tester

Kliknij przycisk "Pobierz dane".
Mając informacje o dostępności kortów w klubie możemy iść jeszcze krok dalej - dokonać bezpośrednio rezerwacji kortu w wybranym terminie! Wariant ten całkowicie automatyzuje proces rezerwacji i udział obsługi nie jest potrzebny.

Dane wejściowe - przesyłane wraz z żądaniem (metodą POST)

Nazwa Opis Wartość domyślna
action Rodzaj akcji / żądania. reserve
datetime Data i godzina w formacie YYYY-MM-DD HH:MM. (parametr)
courts_ids Identyfikator(y) kortu/ów - na podstawie wyniku zapytania o dostępność kortu. Wartości oddzielone średnikiem (;). Jeśli wartość NULL, należy przydzielić dowolny kort. (parametr)
discipline Dyscyplina (dla klubów oferujących różne usługi), dostępne wartości: squash, badminton, tabletenis, tenis. squash
duration Długość rezerwacji w minutach. 60
reservation_id Liczbowy identyfikator rezerwacji w systemie Best of Five. (parametr)
player_id Liczbowy identyfikator gracza w systemie Best of Five. (parametr)
player_name Imię gracza w systemie Best of Five. (parametr)
player_surname Nazwisko gracza w systemie Best of Five. (parametr)
hash Zabezpieczenie tworzone na podstawie klucza do API (indywidualnego dla każdego klubu) oraz przesyłanych parametrów - patrz źródło przykładu, linia 10. (parametr)

Dane wyjściowe - oczekiwane jako rezultat (format tekstowy)

Odpowiedź Opis
OK Rezerwacja przekazana prawidłowo i potwierdzona.
NO_COURTS Brak dostępnych kortów.
{każdy inny ciąg} Błąd, rezerwacja niepotwierdzona. Wiadomość e-mail z informacją do recepcji.

Przykład i tester



Masz pytania?

Pisz o każdej porze dnia i nocy, na pewno któryś z programistów właśnie pracuje nad nową funkcjonalnością :)

[email protected]