Интеграция с TravelLine
TravelLine (https://www.travelline.ru/) — это модуль онлайн-бронирования для отелей, гостиниц и пансионатов. Если у вас на сайте стоит модуль бронирования TravelLine, то для внедрения сквозной аналитики вам нужно:
1. Связать TravelLine c вашей CRM
У вас должна быть CRM-система, например, Битрикс24 или amoCRM. Вам необходимо в TravelLine настроить связку с CRM-системой, чтобы в CRM создавались Сделки или Лиды с модуля бронирования. Подробнее о том, как связать TravelLine с CRM, в базе знаний TravelLine: https://www.travelline.ru/support/knowledge-base/kak-nachat-rabotu-v-lichnom-kabinete-travelline/.
2. Настройте передачу google client id из TravelLine в CRM
Вы можете сделать передачу google client id из TravelLine в CRM самостоятельно. Что такое google client id и где его взять описано здесь https://wiki.alytics.ru/index.php?title=Как_подготовить_CRM_для_подключения_к_Alytics, либо специалисты Alytics настроят такую интеграцию при оплате сервиса Alytics на пол года и больше.
Если настраивают специалисты Alytics, то последовательность такая:
2.1. Чтобы виджет бронирования TravelLine отдавал google client id "наружу" необходимо обновить код виджета бронирования TravelLine, который обычно выглядит так, где XX-XXX-xxxxxx-xxx - идентификатор TravelLine:
<!-- start TL Booking form script -->
<div id="tl-booking-form"> </div>
<script type="text/javascript">// <![CDATA[
(function (w) {
var q = [
['setContext', 'XX-XXX-xxxxxx-xxx', 'ru'],
['embed', 'booking-form', {
container: 'tl-booking-form',
onConnect: function connect(app) {
ga && ga(function (gaTracker) {
app.pushArtifact('GaClientId', gaTracker.get('clientId'));
});
},
}]
];
var t = w.travelline = (w.travelline || {}), ti = t.integration = (t.integration || {});
ti.__cq = ti.__cq ? ti.__cq.concat(q) : q;
if (!ti.__loader) {
ti.__loader = true;
var d = w.document, p = d.location.protocol, s = d.createElement('script');
s.type = 'text/javascript';
s.async = true;
s.src = (p == 'https:' ? p : 'http:') + '//ibe.tlintegration.com/integration/loader.js';
(d.getElementsByTagName('head')[0] || d.getElementsByTagName('body')[0]).appendChild(s);
}
})(window);
// ]]></script>
<!-- end TL Booking form script -->
В него добавить следующий строчки:
var bookingSuccess = function (data) {
if (typeof alsTracker !== 'undefined' && alsTracker) {
alsTracker.setGoogleClientId();
alsTracker.handleRequestData('', {
phone: data.customerPhone,
email: data.customerEmail
}, 'ajax');
}
};
и
onBookingSuccess: bookingSuccess
Итоговый код должен получиться таким:
<!-- start TL Booking form script -->
<div id="tl-booking-form"> </div>
<script type="text/javascript">// <![CDATA[
(function (w) {
var bookingSuccess = function (data) {
if (typeof alsTracker !== 'undefined' && alsTracker) {
alsTracker.setGoogleClientId();
alsTracker.handleRequestData('', {
phone: data.customerPhone,
email: data.customerEmail
}, 'ajax');
}
};
var q = [
['setContext', 'XX-XXX-xxxxxx-xxx', 'ru'],
['embed', 'booking-form', {
container: 'tl-booking-form',
onConnect: function connect(app) {
ga && ga(function (gaTracker) {
app.pushArtifact('GaClientId', gaTracker.get('clientId'));
});
},
onBookingSuccess: bookingSuccess
}]
];
var t = w.travelline = (w.travelline || {}), ti = t.integration = (t.integration || {});
ti.__cq = ti.__cq ? ti.__cq.concat(q) : q;
if (!ti.__loader) {
ti.__loader = true;
var d = w.document, p = d.location.protocol, s = d.createElement('script');
s.type = 'text/javascript';
s.async = true;
s.src = (p == 'https:' ? p : 'http:') + '//ibe.tlintegration.com/integration/loader.js';
(d.getElementsByTagName('head')[0] || d.getElementsByTagName('body')[0]).appendChild(s);
}
})(window);
// ]]></script>
<!-- end TL Booking form script -->
2.2. В TravelLine нужно включить отправку события "onBookingSuccess". Для этого можно обратиться к поддержке TravelLine.
2.3. Теперь google client id будет передавать "наружу" и его сможет подхватить трекер-cid (захватчик форм), который настраивают специалисты по интеграции Alytics.