🚬 Битриксовые JS события — или как вьебаца и метаца
Ну че, народ дали задачку — запилить *таймер холда* в Б24.
📌 Суть:
⏳ Пока идет звонок через телефонию и оператор жмёт Hold — таймер тикает.
⏹ Отжал — стоп, таймер остановился.
📞 Сбросили трубку, мы или абонент — сделать запись в таблице детализации звонка, где будет показано, сколько были на холде общее время.
💡 Первое, что приходит в голову — JS-события:
Вроде круто и удобно — идентификатор звонка есть, нажатые команды есть, можно работать.
☠ А дальше, внезапно свинью подложили так и жили:
1. Оказывается события onPullEvent-voximplant с командами hold и unhold, срабатывает только 1 раз, дальше если звонок завершился, работать не будет, если поступит следующий звонок.
2. Это сработает только в том случае, если обновить страницу. (уже догадываетесь про мой костыль да?) 😁
Попробовал именно так - работает, но это не выход, а точнее выход но через задний проход.
🥲 Да, мог бы написать в поддержку Битрикс24.
🥲 Да, мог бы дождаться фикса (лет через пять).
Но зачем ждать? если можно схуивертить и написать чисто на обычных JS событиях, привязаться к кнопке.
🤹♂ Решения:
1. Забил на стандартные события Битрикса — они кривые и не работают как надо - ебучая балада.
2. Привязался к кнопке Hold/Unhold — тупо отслеживал изменение класса active (да, вот так просто!)
3. Вынес часть логики в глобалку — потому что фреймы, потому что Битрикс, сама кнопка была в одном окне, а таймер во встраиваемой области локального приложения и у нее свой контекст, поэтому глобалки частично.
🎉 Зато событие сброса трубки работает железно всегда!
ну хоть тут они умеют делать а не проебываца за чашкой кофе.
📌 Классика жанра:
1 Пишешь код → вроде пашет → радуешься как дитё → ложная эйфория.
2 Через час понимаешь, что это не фича, а баг в особо извращённой форме.
3 Начинаешь метаться между костылями → "ой, а вот так попробуем" → "ну на этот раз точно!".
4 Повторяешь 5 раз, пока не поймёшь, что Битрикс просто троллит тебя.
💡 Вывод:
Закладывай время х2 сразу — и будешь героем, а не оправдывающимся подкаблучником.
(P.S. Если думаешь, что переоцениваешь сроки — скорее всего, ты их всё равно недооценил. Проверено на 150% стресса.) 😈
Подписывайтесь на наш telegram канал:
Там еще и качевая музыка на тему битры.