Интеграция Roistat с TravelLine
Интеграция позволит загружать в ваш проект Roistat:
- Заявки на бронирование через систему TravelLine.
- Контактные данные клиента: имя, номер телефона, email.
Как работает интеграция
- Клиент заполняет данные в виджете бронирования TravelLine.
- После отправления заявки информация передается в Roistat.
Перед началом настройки
Шаг 1. Поиск счетчика TravelLine
Найдите счетчик TravelLine, который содержит следующую часть кода:
['embed', 'booking-form', {
container: 'tl-booking-form'
}]
Этот счетчик может находиться в нескольких файлах. В эти файлы нужно будет внести изменения. Шаг 2. Модификация счетчика TravelLine
У TravelLine есть два события:
onBookingSuccess
– событие вызывается, когда бронирование успешно завершено. В это событие нужно добавить JS-скрипт, который будет отправлять данные в заявку Roistat. onTrackUserAction
– с помощью этого события можно получить контактные данные пользователя.
Изменения в коде
-
Создайте функцию bookingSuccess
. В ней будет отправка данных в заявку Roistat.
Пример кода |
---|
| function bookingSuccess(data) {
var comment = data.customerComment ? data.customerComment + " \n" : "";
comment += data.bookingNumber ? "Номер брони: " + data.bookingNumber + " \n" : "";
comment += data.arrivalDate ? "Дата заезда: " + data.arrivalDate + " \n" : "";
comment += data.departureDate ? "Дата выезда: " + data.departureDate + " \n" : "";
comment += data.price ? "Стоимость: " + data.price + " \n" : "";
if (phone || email) {
roistatGoal.reach({
name: name,
phone: phone,
email: email,
text: comment,
leadName: "Заявка с формы 'TravelLine'",
fields: {}
});
}
}
|
-
Поправьте счетчик TravelLine:
- В событии
onBookingSuccess
вызовите созданную функцию bookingSuccess
. - В событие
onTrackUserAction
добавьте функцию для получения контактных данных пользователя.
Пример кода |
---|
| ['embed', 'booking-form', {
container: 'tl-booking-form',
onBookingSuccess: bookingSuccess,
onTrackUserAction: function(data) {
if(data.action === "type") {
if(data.field === "email") {
email = data.value
}
if(data.field === "phone") {
phone = data.value
}
if(data.field === "name") {
name = data.value
}
}
}
}]
|
Итоговый пример измененного счетчика TravelLine
Пример кода |
---|
| (function(w) {
function bookingSuccess(data) {
var comment = data.customerComment ? data.customerComment + " \n" : "";
comment += data.bookingNumber ? "Номер брони: " + data.bookingNumber + " \n" : "";
comment += data.arrivalDate ? "Дата заезда: " + data.arrivalDate + " \n" : "";
comment += data.departureDate ? "Дата выезда: " + data.departureDate + " \n" : "";
comment += data.price ? "Стоимость: " + data.price + " \n" : "";
if(phone || email) {
roistatGoal.reach({
name: name,
phone: phone,
email: email,
text: comment,
leadName: "Заявка с формы 'TravelLine'",
fields: {}
});
}
}
var q = [
['setContext', 'TL-INT-galapalmira_2022-06-22', 'ru'],
['embed', 'booking-form', {
container: 'tl-booking-form',
onBookingSuccess: bookingSuccess,
onTrackUserAction: function(data) {
if(data.action === "type") {
if(data.field === "email") {
email = data.value
}
if(data.field === "phone") {
phone = data.value
}
if(data.field === "name") {
name = data.value
}
}
}
}]
];
...
})(window);
|
Шаг 3. Подключение интеграции
-
Отправьте запрос в техподдержку TravelLine:
- В письме приложите ссылки на страницы сайта, где находится виджет бронирования.
- Попросите включить событие
onTrackUserAction
. - В событие
onBookingSuccess
попросите включить все поля для передачи данных.
-
Если вы хотите отправлять заявки на бронирование из Roistat в CRM, настройте передачу заявок в CRM.