битрикс 24 не запускается скрипт
делаю по этой статье https://helpdesk.bitrix24.ru/open/70...ase_id=3743871
на сайте есть чат битрикса и яндекс метрика ошибок в консоли нету, но код не срабатывает похоже код совсем не запускается <script type="text/javascript"> (window.BxLiveChatLoader = window.BxLiveChatLoader || []).push(function() {cosole.log(1); BX.LiveChat.addEventListener(window, 'message', function(event){cosole.log(2); if(event && event.origin == BX.LiveChat.sourceDomain) {cosole.log(3); var data = {}; try { data = JSON.parse(event.data); } catch (err){} if(!data.action) return; if (data.action == 'sendMessage') { if (typeof(dataLayer) == 'undefined') { dataLayer = []; } dataLayer.push({ "ecommerce": { "purchase": { "actionField": { "id" : "user_chat1", "goal_id" : "33855453" }, "products": [ {} ] } } }); } } }); }); </script> cosole.log нигде не вызывается |
Может код забыли на страничке разместить?)
|
код размещен в самом низу перед </body>
|
console
|
я же писал что в консоли ошибок нету
это я тут опечатался получается код валидный? но почему даже первая строка не срабатывает? (window.BxLiveChatLoader = window.BxLiveChatLoader || []).push(function() { |
гуня, а скрипт, который будет работать с массивом "BxLiveChatLoader" разместили?
https://helpdesk.bitrix24.ru/open/6986667/ |
У Aetae не получилась подсказка =(.
<style>@keyframes mm {0%{transform: scale(0.9)}100%{color:red;transform:scale(4.9)}}</style><div> BX.LiveChat.addEventListener(window, 'message', function(event){co<div style="display: inline-block;animation: mm 0.2s ease-in-out 0.10s infinite normal">n</div>sole.log(2); </div> |
сам чат на странице есть
вот код, размещен перед BxLiveChatLoader <script data-skip-moving="true"> (function(w,d,u){ var s=d.createElement('script');s.async=1;s.src=u+'?'+(Date.now()/60000|0); var h=d.getElementsByTagName('script')[0];h.parentNode.insertBefore(s,h); })(window,document,'https://cdn.bitrix24.ru//crm/site_button/loader_.js'); </script> console.log(window.BxLiveChatLoader) выдает undefinded размещен после скрипта чата |
гуня, вам проще ссылку на свой сайт дать.
|
У меня тоже упорно не получается этот BxLiveChatLoader. Хотя я сделал как написано https://helpdesk.bitrix24.ru/open/7056949/
UPD Получилось так <!DOCTYPE html> <html> <head> <meta charset="utf-8"> </head> <body> <script data-skip-moving="true"> (function(w,d,u){ var s=d.createElement('script');s.async=1;s.src=u+'?'+(Date.now()/60000|0); var h=d.getElementsByTagName('script')[0];h.parentNode.insertBefore(s,h); })(window,document,'https://cdn.bitrix24.ru/b9442099/crm/site_button/loader_3_nl2tbq.js'); </script> <script> function getBitrixLiveChat() { return new Promise(function reaction(resolve) { if("BX" in window && "LiveChat" in BX) resolve(); else setTimeout(function() { reaction(resolve) }, 100); }); } getBitrixLiveChat().then(function() { BX.LiveChat.addEventListener(window, "message", function(event) { if (event.origin !== BX.LiveChat.sourceDomain) return; if (event.data.action !== "sendMessage") return; alert("Cообщение доставлено!"); console.log(event); }); }); </script> </body> </html> Который первый скрипт, это из Битрикс, там должен быть скрипт с вашим id, а не с моим тестовым https://cdn.bitrix24.ru/b9442099/crm...er_3_nl2tbq.js Второй скрипт запускает alert("Cообщение доставлено!"); console.log(event); или можете добавить яндекс метрику... он запускается, когда отправляется сообщение и оно доставлено. Можете отправить тестовое сообщение сообщение, и у вас сработает alert("Cообщение доставлено!"); console.log(event); |
немного костыльное решение
попросил заказчика написать в супорт битрикс и уже сутки ждем ответа вот такая у них платная поддежка |
платный супорт битрикс не захотел помогать
якобы у них все прекрасно работает |
похоже ребята из битрикс обновили код
счас работает |
Часовой пояс GMT +3, время: 21:26. |