V systéme OBERON existuje možnosť vytvoriť rezervačný formulár ubytovania (web booking engine, internet booking engine, smart booking engine, on-line booking system...) na internetovej stránke ubytovacieho zariadenia a prepojiť ho s modulom Hotelová recepcia. Táto téma obsahuje základné informácie o tomto prepojení vrátane popisu viacerých spôsobov implementácie rezervačného formulára.
Základné informácie
- Modul Hotelová recepcia systému OBERON podporuje priamu on-line rezerváciu izieb pomocou rezervačného formulára ubytovania na webovej stránke ubytovacieho zariadenia.
- Rezervačný formulár umožňuje po vykonaní rezervácie hosťom na internetovej stránke automaticky zapísať rezerváciu (alebo dopyt na ubytovanie) do evidencie rezervácií a vzápätí ju zobraziť v grafickom prehľade izieb. Rezervovať je možné jednu, prípadne aj viac izieb, pričom je možné overiť stav voľných izieb aj s automatickým výpočtom ceny za ubytovanie.
- Prepojenie formulára s modulom Hotelová recepcia sa realizuje pomocou webových služieb, t. j. on-line, čím sa výrazne minimalizuje riziko duplicitnej rezervácie (prebukovania).
- Pre každý dopyt alebo rezerváciu sa môže vygenerovať automatická notifikácia vo forme e-mailovej alebo SMS správy. Hosťovi sa zasiela jedna notifikácia o prijatí on-line požiadavky, ubytovaciemu zariadeniu sa zasiela druhá správa. Generovanie notifikácií zabezpečuje Generátor notifikácií ako jedna z automatických úloh systému OBERON. Viac informácií je možné získať v téme O automatických notifikáciách.
- Každé overenie pobytu, ako aj zaslanie rezervácie, sa zapisuje do správ o priebehu (log). Viac informácií je možné získať v téme Sledovanie činností.
Možnosti rezervačného formulára
- Overenie dostupnosti voľných izieb vo vybranom termíne, čím poskytuje údaje o obsadenosti v danom termíne (o evidovaných rezerváciách a zaevidovaných ubytovaniach).
- Rezervovať je možné tak typ izby, ako aj konkrétnu izbu.
- Pri typoch izieb systém automaticky priradí najvhodnejšiu izbu (podľa obsadenosti a nadväznosti na koniec iného pobytu, prípadne začiatok ďalšieho pobytu).
- Možnosť rezervácie viacerých izieb.
- Pri skupinovej rezervácii presný rozpis osôb v izbách a vek detí.
- On-line výpočet ceny za ubytovanie.
- Rezervácia alebo dopyt sa automaticky zapíše do knihy rezervácií a zobrazí v grafickom prehľade izieb.
- Viaceré jazykové mutácie.
Rezervačný formulár ubytovania je možné zriadiť na webovej stránke ubytovacieho zariadenia aj jednoduchou inštaláciou pluginu
OBERON - Hotel Reservation priamo do systému
WordPress. Bližšie informácie je možné získať v téme
Rezervačný formulár ubytovania pre WordPress.
Obrázok č. 1: Formulár rezervačného formulára ubytovania
Implementácia rezervačného formulára do webovej stránky
- Rezervačný formulár je možné priamo implementovať do webovej stránky ubytovacieho zariadenia týmito spôsobmi:
a) implementáciou kódu priamo do webovej stránky - profesionálne riešenie s možnosťami úpravy správania sa formulára podľa potrieb a požiadaviek ubytovacieho zariadenia (implementácia je náročnejšia, zvládne ju len webový vývojár).
b) implementácia JavaScript kódu priamo do webovej stránky - náročnejšia implementácia, zvládne ju však aj menej skúsený webový vývojár.
c) vložením odkazu IFrame do webovej stránky - jednoduchá implementácia, avšak obmedzená možnosť úpravy. Farebná schéma sa dá nastaviť priamo v súbore frm_Reservation.html.
- Rezervačný formulár ubytovania so systémom OBERON komunikuje na základe automatickej úlohy typu WebServices API - OBERON 1G, t. j. webových služieb. Rezervačný formulár v rámci komunikácie predstavuje klienta webovej služby.
- V rámci systému OBERON automatickú úlohu vykonáva program OBERON Automation Center. Samotná komunikácia s webovou službou štandardne prebieha pomocou protokolu SOAP, pričom je možné komunikovať aj pomocou JSON štruktúr. Vývojári môžu využiť funkčný príklad rezervačného formulára, ktorý sa nachádza vo webovej aplikácii OBERON Web.
- Rezervačný formulár implementovaný pomocou IFrame sa nachádza v súbore frm_Reservation.html, umiestnenom v \\OBERON\WebServices\NazovWebovejSluzby\OBERONWebTemplates\. Tento HTML súbor obsahuje aj JavaScript (programový kód) samotného formulára a volanie funkcií webovej služby.
- Ak sa rozhodnete upravovať súbor frm_Reservation.html (napr. z dôvodu nastavenia farebnej schémy), neupravuje originálny súbor, pretože pri inštalácii najbližšej aktualizácie OBERON-u sa automaticky prepíše. Je potrebné vytvoriť jeho kópiu a umiestniť ju do adresára OBERONWebTemplates_UserDefined.
- Rezervačný formulár sa pripája na IP adresu webovej služby, ktorá spravidla beží na serveri ubytovacieho zariadenia. Z tohto dôvodu musí mať ubytovacie zariadenie verejnú IP adresu. Pri nastavení komunikácie je potrebné na sieťovom smerovači (rootri) nastaviť presmerovanie z vonkajšej IP adresy (a daného portu) do počítača, v ktorom beží webová služba (netreba zabudnúť ani na nastavenie brány firewall).
|
Dôležité!
Rezervačný formulár môže byť problém otestovať v rámci jedného internetového pripojenia, t. j. ak sa z tej istej IP adresy pripojíte na webovú stránku s rezervačným formulárom a zároveň sa tento rezervačný formulár pripája na tú istú IP adresu. V tomto prípade vzniká problém tzv. NAT Loopback, viac informácií je možné získať napr. na tejto webovej adrese. Jednoduchým riešením môže byť inštalácia napr. Tor Browsera a v ňom otvorenie stránky s rezervačným formulárom. |
Implementáca rezervačného formulára do internetovej stránky pomocou IFrame |
Skopírovať kód
|
// Funkcia na zmenu veľkosti stránky podľa rezervačného formulára
<script>
function resizeParentIframe() {
var par = window.parent;
if (!par || !_self.defaults.parentIframeID) return;
setTimeout(function () {
var target = par.postMessage ? par : (par.document.postMessage ? par.document : undefined);
if (typeof target != "undefined" && document.body.scrollHeight) {
var container = $(".main");
var data = { event: "resizeIframe", height: container.height() };
target.postMessage(data, "*");
}
}, 500); //čas vyvolania udalosti musí byť dosť dlhý aby sa vykonala po plnom vyrolovaní zoznamu izieb rezervácie
}
</script>
// Rezervačný formulár volaný pomocou IFrame
<p>
<iframe align="middle" frameborder="0" height="700" id="ID_IFrame" scrolling="no" src="http://192.168.16.101:25561/html?c=hotel_BaseForm_ReservationAccommodation" width="700"></iframe>
</p>
|
Responzívny dizajn
- Rezervačný formulár ubytovania podporuje aj responzívny dizajn - automatické prispôsobenie veľkosti formulára zariadeniu, na ktorom sa webová stránka zobrazí. Samozrejme, predpokladom je, že celá webová stránka, v ktorom je vložený IFrame, podporuje responzívny dizajn.
- Respozívny dizajn formulára je možné dosiahnuť úpravou súboru CSS danej webovej stránky. Je ho potrebné doplniť o kód uvedený nižšie. Zároveň je potrebné z odkazu na IFrame odstrániť nastavenie width="700" (pozri kód vyššie).
Responzívny dizajn - úprava CSS webovej stránky |
Skopírovať kód
|
// Nastavenie šírky IFrame v závislosti na maximálnej šírke stránky. Je ho potrebné vložiť do základného CSS danej webovej stránky
#ID_IFrame {
width: 700px;
}
@media only screen and (max-width: 640px) {
#ID_IFrame {
width: 570px;
}
}
@media only screen and (max-width: 520px) {
#ID_IFrame {
width: 450px;
}
}
@media only screen and (max-width: 420px) {
#ID_IFrame {
width: 360px;
}
}
@media only screen and (max-width: 360px) {
#ID_IFrame {
width: 310px;
}
}
@media only screen and (max-width: 320px) {
#ID_IFrame {
width: 270px;
}
}
|
Jazykové mutácie
- Rezervačný formulár môže fungovať vo viacerých jazykových mutáciách - momentálne sú k dispozícii tieto:
- slovenský jazyk (predvolené)
- anglický jazyk - (príkaz lang=en)
- nemecký jazyk - (príkaz lang=de)
- poľský jazyk - (príkaz lang=pl)
- český jazyk - (príkaz lang=cs)
- Ďalšie jazykové mutácie je možné implementovať veľmi jednoducho - vytvorením ďalšieho súboru c:\OBERON\WebServices\názov služby v OAC\OBERONWebTemplates\lang\frm-reservation-XX.txt, kde XX je kód jazyka (napr. c:\OBERON\WebServices\WS-OBERON\OBERONWebTemplates\lang\frm-reservation-en.txt).
- Jazyková mutácia sa nastavuje pre každý formulár zvlášť vložením príslušného príkazu do kódu, napr. pri implementácii pomocou IFrame pre anglickú mutáciu: http://192.168.16.101:25561/html?c=hotel_BaseForm_ReservationAccommodation&lang=en (pozri nižšie).
Obrázok č. 2: Formulár rezervačného formulára ubytovania v anglickom jazyku s upravenou grafickou témou
Implementáca rezervačného formulára do internetovej stránky pomocou IFrame (anglický jazyk) |
Skopírovať kód
|
// Funkcia na zmenu veľkosti stránky podľa rezervačného formulára
<script>
function resizeParentIframe() {
var par = window.parent;
if (!par || !_self.defaults.parentIframeID) return;
setTimeout(function () {
var target = par.postMessage ? par : (par.document.postMessage ? par.document : undefined);
if (typeof target != "undefined" && document.body.scrollHeight) {
var container = $(".main");
var data = { event: "resizeIframe", height: container.height() };
target.postMessage(data, "*");
}
}, 500); //čas vyvolania udalosti musí byť dosť dlhý aby sa vykonala po plnom vyrolovaní zoznamu izieb rezervácie
}
</script>
// Rezervačný formulár volaný pomocou IFrame (Anglicky)
<p>
<iframe align="middle" frameborder="0" height="700" id="ID_IFrame" scrolling="no" src="http://192.168.16.101:25561/html?c=hotel_BaseForm_ReservationAccommodation&lang=en" width="700"></iframe>
</p>
|
Príbuzné témy