Kod: Zaznacz cały
ApiUrl: api.profitroom.pl
UserName: testdmplaza
Password: jakieshaslo
HotelCode: numer
Teraz możemy przystąpić do skonfigurowania interefejsu.
Należy zadbać aby w katalogu DM Plaza była biblioteka pmailer.dll. Struktura bazy musi być zgodna z bieżąca wersją - istotna jest struktura tablicy oblozeniesync
1. Konfigurujemy moduł
Ustawiamy
Rezerwacja internetowa "profitroom"
Moduł aktywny na tym stanowisku
Na zakładce rezerwacja zdalna wypełniamy pola zgodnie z uzyskaną wcześniej informacją o połączeniu.
Ważne jest poprawne skonfigurowanie zarówno haseł, jak i interwału w którym dm plaza będzie wysyłać obłożenie do profitroom.
Pełna wysyłka oznacza całe obłożenie hotelu w zakresie x najbliższych miesięcy, a wysyłka zmian to wysłanie zmian w obłożeniu hotelu w porównaniu do poprzedniej wysyłki.
Najczęściej stosuje się wiele wysyłek cząstkowych w krótkim okresie i jedna wysyłkę pełną (np. co dobę, co 12h) w długim okresie (np 6 miesięcy).
2. Konfiguracja typów pokoi
Do typów pokoi przyporządkowujemy numer zewnętrzny typu.
Skąd taki numer zewnętrzny wziąć? Najprościej z profitroom,
Mnemoniki typów pokoi możemy otrzymać z panelu uppera lub wykonując polecenie:
Kod: Zaznacz cały
https://api.profitroom.pl/inventory_notif?UserName=[i]nazwahotelu[/i]&Password=[i]haslo[/i]
[shadow=darkred]
[glow=red]polecenie to zwraca plik XML, zatem nie ma sensu wklepywać go w przeglądarkę. Musimy uzyskać źródło odpowiedzi (źródło strony)[/glow][/shadow]
Przykładowa odpowiedź:
Kod: Zaznacz cały
<?xml version="1.0" encoding="utf-8"?>
<OTA_HotelInvNotifRQ xmlns="http://www.opentravel.org/OTA/2003/05" Version="01"><SellableProducts HotelCode="[b]tu_kod_hotelu[/b]"><SellableProduct InvStatusType="Active" InvCode="APT1" InvType="room" IsRoom="true"><GuestRoom><Occupancy MaxOccupancy="4"/><Room RoomID="18018" RoomType="APT1"/><Description><Text>Apartament PRESTIGE nr 1</Text></Description></GuestRoom></SellableProduct><SellableProduct InvStatusType="Active" InvCode="APT4" InvType="room" IsRoom="true"><GuestRoom><Occupancy MaxOccupancy="6"/><Room RoomID="18019" RoomType="APT4"/><Description><Text>Apartament PRESTIGE nr 4</Text></Description></GuestRoom></SellableProduct><SellableProduct InvStatusType="Active" InvCode="APT5 " InvType="room" IsRoom="true"><GuestRoom><Occupancy MaxOccupancy="6"/><Room RoomID="18020" RoomType="APT5 "/><Description><Text>Apartament PRESTIGE nr 5</Text></Description></GuestRoom></SellableProduct><SellableProduct InvStatusType="Active" InvCode="APT2" InvType="room" IsRoom="true"><GuestRoom><Occupancy MaxOccupancy="4"/><Room RoomID="18242" RoomType="APT2"/><Description><Text>Apartament PRESTIGE nr 2</Text></Description></GuestRoom></SellableProduct><SellableProduct InvStatusType="Active" InvCode="APT3" InvType="room" IsRoom="true"><GuestRoom><Occupancy MaxOccupancy="4"/><Room RoomID="18243" RoomType="APT3"/><Description><Text>Apartament PRESTIGE nr 3</Text></Description></GuestRoom></SellableProduct><SellableProduct InvStatusType="Active" InvCode="APT6 " InvType="room" IsRoom="true"><GuestRoom><Occupancy MaxOccupancy="6"/><Room RoomID="18244" RoomType="APT6 "/><Description><Text>Apartament PRESTIGE nr 6</Text></Description></GuestRoom></SellableProduct><SellableProduct InvStatusType="Active" InvCode="APT7" InvType="room" IsRoom="true"><GuestRoom><Occupancy MaxOccupancy="6"/><Room RoomID="18246" RoomType="APT7"/><Description><Text>Apartament PRESTIGE nr 7</Text></Description></GuestRoom></SellableProduct><SellableProduct InvStatusType="Active" InvCode="APT8" InvType="room" IsRoom="true"><GuestRoom><Occupancy MaxOccupancy="6"/><Room RoomID="18247" RoomType="APT8"/><Description><Text>Apartament PRESTIGE nr 8</Text></Description></GuestRoom></SellableProduct><SellableProduct InvStatusType="Active" InvCode="18432" InvType="extra" IsRoom="false"><Description><Text>Obiadokolacja</Text></Description></SellableProduct><SellableProduct InvStatusType="Active" InvCode="18433" InvType="extra" IsRoom="false"><Description><Text>Dostawka</Text></Description></SellableProduct><SellableProduct InvStatusType="Active" InvCode="18434" InvType="extra" IsRoom="false"><Description><Text>Śniadanie</Text></Description></SellableProduct><SellableProduct InvStatusType="Active" InvCode="18435" InvType="extra" IsRoom="false"><Description><Text>Miejsce parkingowe dla 1 samochodu</Text></Description></SellableProduct><SellableProduct InvStatusType="Active" InvCode="18436" InvType="extra" IsRoom="false"><Description><Text>Łóżeczko turystyczne</Text></Description></SellableProduct><SellableProduct InvStatusType="Active" InvCode="18437" InvType="extra" IsRoom="false"><Description><Text>Nocnik</Text></Description></SellableProduct><SellableProduct InvStatusType="Active" InvCode="18438" InvType="extra" IsRoom="false"><Description><Text>Elektroniczna niania</Text></Description></SellableProduct><SellableProduct InvStatusType="Active" InvCode="18439" InvType="extra" IsRoom="false"><Description><Text>Wanienka</Text></Description></SellableProduct><SellableProduct InvStatusType="Active" InvCode="18798" InvType="extra" IsRoom="false"><Description><Text>Pobyt dziecka 0-5 lat</Text></Description></SellableProduct></SellableProducts></OTA_HotelInvNotifRQ>
3. Konfiguracja mnemoników w profilach importu.
Nie jest obowiązkowa, jeśli mamy do dyspozycji InvCode w postaci liczby. Jeśli mamy tylko jeden profil importu i invCode numeryczne, możemy invCode wpisać w pole numer zewnętrzny podczas definicji typu pokoju. W innym przypadku musimy skonfigurować profile importu.
4. Konfiguracja allotmentu.
Ten krok ma na celu określenie jaka liczba pokoi zostanie wystawiona do sprzedaży.
Allotment można konfigurować niezależnie dla każdego typu pokoju i zakresu czasu. Może istnieć zatem kilka konfiguracji dla każdego pokoju. Brak konfiguracji allotmentu powoduje wysyłkę zerowej dostępności pokoju.
5. Sprawdzenie
Eksport Allotmentu możemy sprawdzić w rezerwacjach. Proszę używać rozważnie na rzeczywistych bazach.
- Prześlij allotment obiektu do rez. online służy do przesłania całego allotmentu za dany okres do profitroom
- Aktualizuj zmiany w obłożeniu w rez. online wysyła tylko różnice w przesłanym allotmencie, a nowym stanem obłożenia. jeśli w tzw. międzyczasie nie było ruchu w hotelu, nie przesyła nic.
W tym samym menu możemy sprawdzić rezerwacje w profitroom dla każdego z profili importu niezależnie. Pobrane rezerwacje widoczne są w liście "Rezerwacje online" w module Recepcja.
Allotment jest wysyłany zawsze dla wszystkich profili.
Oczywiście po włączeniu automatycznej aktualizacji obłożenia korzystanie z tego menu nie jest konieczne.
6. Parametry pomocnicze.
RezerwacjeOnlineRodzajAkcji -Sprawdzanie rezerwacji online
-0 :ręcznie,
-1 :po zamknięciu doby,
-2 :co godzinę,
-3 :co 10 min.
RezerwacjeAktualizacjaOnlineRodzajAkcji -Aktualizacja zasobów online
-0 :ręcznie,
-1 :po zamknięciu doby,
-2 :co godzinę,
-3 :co 10 min.
Przy czym wybranie parametru 2,3 także spowoduje sprawdzenie raz na dobę jako wysyłki pełnej.
Np. możliwe jest ustawienie RezerwacjeOnlineRodzajAkcji=0 i RezerwacjeAktualizacjaOnlineRodzajAkcji =2, co spowoduje brak odczytu rezerwacji z profitroom, jedynie wysyłanie cząstkowych wartości obłożenia co godzinę i pełnego obłożenia raz na dobę.
Proszę pamiętac także o ustawieniu numer wersji Uppera w program.ini
np.
Kod: Zaznacz cały
[E-BOOKING]
UPPER VER=5
7. Wiele profili importu.
W DM Plaza można zdefiniować wiele profili importu, każdy z odrębnym kodem hotelu i mnemonikami. Stosujemy takei rozwiązania gdy klient ma więcej nż jeden kanał rezerwacji.
Profile importu dla Profitroom muszą być typu OTA. Każdy z tych profili może mieć własny numer klienta, hasło , login i być wywoływany niezależnie (np. tylko na zadanie).
Profile dodadzą się do menu pobierania rezerwacji online (w liści rezerwacji). Gdy będziemy chcieli sprawdzić rezerwacje online, możemy to zrobić osobno dla każdego z profili. Automatyczne sprawdzanie rezerwacji, tak samo jak wysyłanie allotmentu odbywa się dla wszystkich profili jednocześnie.
W przypadku, gdy nie podamy numeru klienta dla profilu system będzie korzystał z globalnych ustawień modułu.
Dla pokoju, którego nie chcemy wysyłać w danym profilu NIE tworzymy profilu.
8. Znane błędy:
update_avail - błąd aktualizacji allotmentu. Najczęściej oznacza, że wysyłany mnemonik nie istnieje. Pamiętajmy, ze system najpierw sprawdza numer zewnętrzny, a potem profile. Aby numer zewnętrzny typu pokoju nie był brany pod uwagę należy wpisać "-1"
brak numer hotelu przy confirm bookings - błędny numer wersji Uppera. Należy zmienić na UPPER VER>=2