- 1. Настройка интерфейса связи с Travelline
- 1.1 Разделение договоров Channel Manager для двух 2-х отелей с разными договорами в одной базе данных
- 1.2 Рост памяти службы OnlineServer с дальнейшим зависанием(остановкой)
- 1.3 Описание настройки модуля Channel Manager Travelline
- 1.4 Описание настройки "Доп. услуги включены в стоимость"
- Разделение по каналам продаж
- Работа с квотами
- Выгрузка доп. мест
- Выгрузка возрастных категорий на доп. место
- Статус брони (Новая реализация)
- Две гостиницы в одной базе данных
- Сохранение переброни в лист ожидания (Новая реализация)
- Сoхранение броней по номеру канала продаж / Travelline
- Работа с Lite версией
- Внесение изменений при работающей интеграции
- Анализ ошибок настройки
- Анализ логов
1. Настройка интерфейса связи с Travelline
Инструкция соответстует версии 2.12.132.3280. Рекомендовано производить настройку на ней или более новой версией
1.1 Разделение договоров Channel Manager для двух 2-х отелей с разными договорами в одной базе данных
Поддержано в версии 2.12.126.2650
Для настройки данной схемы работы необходимо при создании договора выбрать соответствующую гостиницу для каждого договора:

1.2 Рост памяти службы OnlineServer с дальнейшим зависанием(остановкой)
В Shelter может наблюдаться проблема с ростом занимаемой памяти shelter.exe для службы ShelterOnlineServer. В логах можно увидеть ошибку:
-
Message: Access violation at address 02888652 in module 'shelter.exe'. Read of address 0000001D
Или бесконечную проверку лицензии:
-
TRY: TLicence.SendCommandStr[ISCHANGE_ALL &SubscribeID=573&RID=216&TIME=20191127180518]
Служба продолжает работу, однако запросы и команды от ShelterTravellineServer/ShelterWubookServer не принимает и не обрабатывает.
Необходимо воспользоваться автоматическим перезапуском служб с помощью *.bat - файла. Пример *.bat-файл для перезапуска ShelterOnlineServer :
Пример *.bat-файл для перезапуска ShelterTravellineServer :
Необходимо добавить эти 2 *.bat файла в планировщик заданий и создать задание для поочередного перезапуска служб 1/2/3 раза в сутки :
1. ShelterOnlineServer
2. ShelterTravellineServer/ShelterWuBookServer
ВНИМАНИЕ!!!
В целях мониторинга работоспособности связки рекомендуем: сообщить в тех поддержку компании TravelLine e-mail ответственного за интеграцию сотрудника или общую почту тех. поддержки дилера. В случае потери связи TravelLine отправит письмо об этом. При восстановлении связи так же придет письмо.
ВНИМАНИЕ!!! Время заезда и выезда в Travelline и Shelter должны совпадать!
1.3 Описание настройки модуля Channel Manager Travelline
Служба ShelterTravelLineServer является посредником между системой глобального бронирования Channel Manager Travelline и программным
продуктом Shelter 2.
Передача данных между Travelline и службой ShelterTravelLineServer осуществляется в реальном времени, в формате XML.
Изображение структурной схемы работы (рис. 1):

Необходимо заключить договор с Travelline. Специалисты Travelline должны прислать параметры для интеграции, а именно :
- Код отеля;
- Параметры для подключения к сервису TLConnect (логин/пароль);
- Параметры входа в личный кабинет (не путать с подключением к TLConnect);
- Коды API (коды тарифов, коды категорий номеров);
Данные коды API вы можете просмотреть самостоятельно, в личном кабинете Travelline (рис. 2).
ВНИМАНИЕ!!!
Настройками тарифов/категорий номеров и пр. в лк Travelline сотрудники компании UCS не занимаются.
В связке используется модуль Shelter Online. При наличии Firewall, он должен быть настроен таким образом, чтобы отправлялись и получались
запросы на порт 7779 (или другой, если такая настройка будет произведена намеренно).
В ключ защиты должен быть прописан модуль связи с ChannelManager (Wubook/Travelline)

Настройки интеграции необходимо производить через «Сервисы и обрудование» (Настройки - Сервисы и оборудование) рис. 3:

Для настройки интеграции необходимо выполнить следующие действия :
1. Установить cлужбу Online Server; (мануал по корректной настройке можете посмотреть ТУТ)
- Создать ярлык для shelter.exe, в свойствах ярлыка, в поле «Объект» добавить следующий ключ:
-online_server -install
2. Установить службу для интеграции с Travelline (UCS Shelter Travelline Server) :
а) Создать директорию в корне Shelter (../Travelline/) и скопировать необходимые файлы :
shelter.exe
shelter.dll
gds32.dll
bass.dll
borlndmm.dll
libeay32.dll
ssleay32.dll
shelter.ini
б) Создать ярлык для shelter.exe, в свойствах ярлыка, в поле «Объект» добавить следующий ключ :
-travelline_server -install
в) Далее необходимо запустить ярлык от имени администратора. Должно появиться сообщение о успешной установке службы.
3. Зайти в Shelter – «Настройки»- «Сервисы и оборудование» (рис. 4) И добавить модуль Travelline согласно (рис. 5)


Настройки, изображенные на рис. 5, без необходимости не менять, параметр «Имя компьютера» заполнится автоматически, в соответствии с именем ПК.
4. Зайти в настройки модуля и настроить по аналогии с рис. 6

(Рис. 6)


Новая реализация с версии 2.12.127.2750!!!
1.4 Описание настройки "Доп. услуги включены в стоимость"
Поддержано в версии 2.12.127.2750

Данная настройка необходима исключительно, если в Travelline выгружается тариф у которого есть пакеты услуг, которые НЕ включены в тариф:
1. Чек-бокс активен - цена по тарифу выгружается с учетом доп. услуг и при сохранении брони доп. услуги входят в стоимость по брони.
2. Чек-бокс не активен - цена по тарифу так же выгружается с учетом доп. услуг, но при сохранении брони доп. услуги начисляются дополнительно сверху стоимости по брони.
Настройки отправки E-Mail беруться из Shelter.ini секция [Exception Log]
Таймаут соединения с сервером Travelline. Указывается в миллисекундах (1 с = 1000 мс)
Таймаут чтения отвта от сервера Travelline. Указывается в миллисекундах (1 с = 1000 мс)
5. После завершения настроек в табл. 1 необходимо нажать кнопку «Сохранить»
6. Зайти в «Настройки» - «Справочники» - «Гостиницы» - «Гостиницы» и ввести Код гостиницы в поле «Код в системе Travelline» (рис. 7)

7. Перейти во вкладку «Ресурсы» - «Типы ресурсов» и внести соответствующие коды API в поле «Travelline» - Идентификаторы (рис. 8).
ВНИМАНИЕ (!!!) Количество основых и дополнительных мест в Shelter и Travelline должны совпадать

8. Перейти во вкладку «Тарифы» - «Типы тарифов» и выбрать созданный тариф для выгрузки в Travelline. Перейти во вкладку «Внешние системы»
и в поле «Использовать тариф для системы Travelline» прописать код API из личного кабинета Travelline и поставить чек-бокс
«Использовать тариф для системы Travelline» (рис. 9)

(Рис. 9)
Внимание (!!!) Соблюдайте уникальность тарифа в пределах категории номера.
9. Перейти в настройки системы : «Внешние системы»- «Схема работы» - выбрать необходимую схему работы (рис. 10).

(Рис. 10)
10. Перейти в модуль договорная работа : «Бронирование» - «Договоры» - «Добавить юридическое лицо» - Указать краткое и полное
наименование организации (Travelline) - рис.11, а так же указать WuBook/Travelline/ResOnline во вкладке «Интернет бронирование» - «Внешние системы» (Рис. 12)

11. Перейти во вкладку «Тарифы» и поставить чек-боксы «Активен» и «Использовать онлайн» для соответствующего тарифа,
а так же поставить чек-бокс «Не объединять с гостиничным тарифом» (это необходимо для того, чтобы стоимость по тарифу,
если она отличается от стоимости в Shelter, могла корректно сохраниться для определенной категории). (Рис. 13)

(Рис. 13)
12. Для сохранение оплаченных броней, необходимо добавить тип оплаты в «Справочники» - «Услуги» - «Оплаты».
Установить чек-бокс «Использовать для WuBook/Travelline» (рис. 14) и настроить оставшиеся обязательные поля по аналогии.

(Рис. 14)
Важно!!! Не забывайте удалять файл onlineserver.xml при обновлении Shelter. После запуска службы ShelterOnline он создастся заново,
актуальной версии.Если клиент использует только TravelLine, а интернет-бронирование нет (это разные модули в ключе защиты,
несмотря на то что тут ShelterOnline тоже используется!), необходимо в файле onlineserver.xml все значения autostart="1" заменить на autostart ="0"
и в shelter.ini в секции [onlineserver] выставить gds=BOOKING. Отследить необходимость данного действия можно по логу онлайн сервера.
В нем будет ошибка Device licence error. Если в ключе точно прописан проект 3, модуль 10, а проект 3, модуль 5 отсутствует - действуйте как указано выше.
13. Текущая настройка необходима для версий Shelter 2.12.127.2750 и выше!!! (Бывают исключения для версий старее)
Исправлен механизм сохранения платежей для TravellineServer.
Необходимо, в настройках киоска настроить «Возможные типы оплат» - устанавливаем чек-бокс на ранее заведенной оплате для Travelline:

(Рис. 15)
Так же нужно настроить поле «Список доступных пользователей» - устанавливаем чек-бокс на пользователе *TRAVELLINE*:

(Рис. 16)
Разделение по каналам продаж
Для каждого канала продаж необходимо создать организацию, переходим «Бронирование» - «Договоры» - «Добавить юридическое лицо». (рис. 15)

(рис. 15)
Указываем краткое и полное наименование организации (Booking.com), ниже во вкладке «Интернет бронирование» - «Внешние системы» указываем
канал продаж «Booking.com». (рис. 16)

(рис. 16)
Далее во вкладке «Договоры» настраиваем по аналогии с основной организацией Travelline.
Для каждого канала продаж, который использует ваша GDS система необходимо заводить организацию и настраивать по аналогии
из выше приведенного примера.
Работа с квотами
Для корректной настройки квот необходимо воспользоваться инструкцией Квоты.doc
Выбрать схему работы с квотами :

(Рис. 17)
Выгрузка доп. мест
Для выгрузки дополнительных мест в Travelline необходимо произвести следующую настройку:
1. Заходим в «Справочники» - «Справочники» - «Категория размещения» (Рис. 18)

(Рис. 18)
2. Если у вас уже заведены цены для доп. мест, то данная категория размещения уже должна быть заведена (если ее нету, то добавляем ее).
Выбираем доп. место и нажимаем кнопку «Изменить», в открывшемся окне необходимо поставить чек-бокс «Использовать для Travelline». (Рис. 19)

(Рис. 19)
Если все остальные настройки корректны, то после произведенной настройки доп. места начнут выгружаться в Travelline.
Выгрузка возрастных категорий на доп. место
Для выгрузки возрастных категорий необходимо создать в ЛК Travelline возрастные категории.
По вопросу создания категорий необходимо обратиться в Travelline. Далее в Shelter необходимо создать возрастные категории.
«Справочники» - «Справочники» - «Возраст гостя»

(Рис. 20)
Создать необходимые категории и указать в настройках «Использовать для Travelline» и указать код из системы Travelline.
ВНИМАНИЕ!!! Чек-бокс для взрослого "Использовать для Travelline" ставить не нужно!!
В Travelline настройка идет следующим образом: «Ребенок от 7 до 12 лет», далее «Ребенок от 12 до 13 лет», «Ребенок от 13 до 14 лет», «Ребенок от 14 до 15 лет».

В Shelter необходимо указать код для Travelline в таком порядке:
1. «Ребенок от 7 до 12 лет» - 0
2. «Ребенок от 12 до 13 лет» - 1
3. «Ребенок от 13 до 14 лет» - 2
4. «Ребенок от 14 до 15 лет» - 3
и тд. по возрастанию в зависимости сколько у вас возрастных категорий
Так же необходимо донастроить тариф (завести операции тариф-пакета для детей)
Статус брони (Новая реализация)
ВНИМАНИЕ!!! Данный функционал доступен только с версии 2.12.125.2480 или новее
Теперь в настройках Travelline можно установить необходимый статус для приходящих броней. Заходим в Shelter – «Настройки» – «Сервисы и оборудование»
и открыть настройки Travelline. В них можно увидеть поле «Статус брони» в котором нужно указать необходимый статус для приходящих броней (рис. 21).

(Рис. 21)
Описание статуса броней:
- Гарантированная, если подтверждена - статус брони всегда «Гарантированная», причина в том, что бронь в ЛК Travelline автоматически подтверждается.
- Всегда лист ожидания - оплаченная бронь статус «Гарантированная», а у не оплаченной «Лист ожидания».
- Всегда гарантированная - оплаченные и не оплаченные брони имеют статус «Гарантированная».
Две гостиницы в одной базе данных
Для настройки интеграции двух гостиниц в одной базе данных необходимо сделать следующее:
- Установить службы OnlineServer и TravellineServer в разные папки для каждой гостинцы свои. Например:
1. Гостиница Новая - OnlineServerNovaya и TravellineServerNovaya
2. Гостиница Старая - OnlineServerStaraya и TravellineServerStaraya
Более подробно как создавать службы с нестадартным наименованием можно посмотреть тут
- В Shelter.ini, откуда запускаются службы необходимо настроить работу OnlineServer на разных портах. Для этого:
1. В Shelter.ini находим секцию [OnlineServer], там есть параметр «tcpport».
2. Для OnlineServerNovaya указываем «tcpport = 7779», для OnlineServerStaraya указываем «tcpport = 7778»
(Можно другие порты. Главное, чтобы их не занимали другие программы)
- В сервисах и оборудовании необходимо будет добавить два драйвера «Travelline», для каждой гостиницы свой.
- Так же главное исправить поле «Имя службы» на соответствующее вашим созданным службам:


Выглядеть будет так:

- Ранее мы для каждой службы OnlineServer указали свой порт, на котором она будет работать. Помимо настроек в Shelter.ini нам нужно еще указать порт, который будет прослушивать определенная служба TravellineServer. Для этого:
1. Так как ранее для OnlineServerNovaya в Shelter.ini мы указали порт «7779», то в Shelter в настройках драйвера Travelline указываем «Порт ShelterOnlineServer - 7779»

2. Тоже самое делаем для OnlineServerStaraya, но уже указываем порт «7778», который мы указали в Shelter.ini для этой службы

- Если вдруг, у вас категории или тарифы используются одни и те же на обе гостиницы, тогда просите Travelline сделать коды API для обоих личных кабинетов одинаковыми.
Сохранение переброни в лист ожидания (Новая реализация)
Реализация доступна в версии 2.12.131.3200
В параметрах ChannelManager добавлена настройка "Сохранять переброни в лист ожидания", по умолчанию настройка выключена.
- Чек-бокс активен - брони сохраняются вниз шахматки в лист ожидания, даже если свободных номеров нету.
- Чек-бокс не активен - если свободных номеров нету, брони не сохраняются

Сoхранение броней по номеру канала продаж / Travelline
Реализация доступна в версии 2.12.131.3200
В параметрах ChannelManager добавлена настройка "Сохранять брони с дополнительным номером" :
- Чек-бокс активен - бронь сохраняется с номером из канала продаж (пример: 1583451055)
- Чек-бокс не активен - бронь сохраняется с номером из Travelline (пример: 20180813-8438-29593222)

Работа с Lite версией
Модуль Travelline поддерживает работу с Shelter Lite, настраивается аналогично. Исключением по настройке интеграции является только заведение организации Travelline.
1. Чтобы завести/отредактировать организации нужно создать любую бронь на шахматке (Рис. 22):

(Рис. 22)
2. В открывшейся карточке, в секции «Организации» нажать на <...> (Рис. 23):

(Рис. 23)
3. Откроется окно со списком заведенных организаций, в котором можно их добавлять/изменять. Необходимо нажать «Добавить» (Рис. 24):

(Рис. 24)
4. Открывается окно в котором необходимо заполнить тип клиента, краткое и полное наименование, тип организации и канал продаж.
Заполняем как на примере (Рис. 25):

(Рис. 25)
Краткое, полное наименование и тип организации можете указать по вашему усмотрению.
После выше описанных действий организация Travelline успешно настроена.
Если клиент жалуется что на какую-либо дату выгружается неправильная цена, или вообще не выгружается
Первое правило в данном случае - зайти в формирование тарифов, и в калькуляторе тарифов убедиться, что на заявленную дату в рамках тарифа,
используемого для интернет бронирования формируется верная цена. Если в калькуляторе цена не верна, значит это ошибка настройки тарифа, а не выгрузки в TL.
Если цены выгружаются до какой-то даты, а дальше нет, то возможно в модуле настроек стоит дата обновлять до этого числа.
Внесение изменений при работающей интеграции
В случае, если выгрузка в Travelline у вас уже работает и вы вносите изменения в Shelter по тарифу, количеству мест и тд, то после внесения изменений выгрузку необходимо перезапускать (перезапуск служб OnlineServer и TravellineServer).
Анализ ошибок настройки
Если служба работает неверно, то следует в первую очередь проверить что настройки верны:
1. Выбрана схема работы
2. Добавлена организация для TL, в ее настройках указан канал TL. Имеется договор по-умолчанию.
3. В настройках верно указан код гостиницы. В карточке гостиницы в shelter так же во вкладке "Сервисы и оборудование" указан этот код
4. Выбран тариф, который будет использоваться для TL. В его настройках стоит флаг использовать для TL, верно указан id тарифа.
5. Используется последняя версия модуля
6. Файл onlineserver.xml актуальной версии
7. Если в ключе нет проекта 3, модуль 5 - в onlineserver.xml все autostart="1" заменены на autostart="0" Причина 90% ошибок - неверные настройки.
Не поленитесь перепроверить их!
Анализ логов
Порядок обмена:
Запрашиваются настройки через OnlineServer — пример:

TTravelLineCM.Init Result = 1
Вызывается метод «HotelAvailRQ» (TRY: HotelAvailRQ), отправляем по HTTP-протоколу сформированный xml-запрос :

Если доставка успешна — получем ответ (DONE: HotelAvailRQ), который возвращает Типы номеров (<RoomTypes>

Происходит сопоставление типов категорий номеров и типов тарифов в Travelline и Shelter (по API — кодам, количеству основных/дополнительных мест)
Далее вызывается метод HotelAvailNotifRQ (TRY: HotelAvailNotifRQ) - выгружается доступность номерного фонда

Ответ :

После этого вызывается HotelRateAmountNotifRQ (TRY: HotelRateAmountNotifRQ) – выгрузка стоимости по тарифу

Ответ :

Проверка недоставленных броней происходит при помощи метода HotelReadReservationRQ (TRY: HotelReadReservationRQ)

В ответ (DONE: HotelReadReservationRQ) приходит xml с информацией по брони (канал бронирования, номер брони, дата заезда/выезда и пр.)
Происходит парсинг xml средставми службы Travelline и сохранение брони.
Выгрузку доступных мест (основных и доп.) можно увидеть в логе, по ключевому слову : <rs_quant>
Где каждая нода <rs_qant>