Jump to content

Bimchatbox не реконнектится после прерывания соединения.

Featured Replies

Posted
comment_165809

Ребят, вообщем такая проблема.

Установлен Bimchatbox Free 4.0.5. Всё работает идеально, кроме одного, во время длительного простоя или плохом соединении связи чат-бокс прерывает сессию, если нажать реконнект, он подгружает сообщения из чата, но в исходное состояние как по дефолту не приходит (скрины прикрепил)

В php не силён, но дайте хотя бы рекомендации куда копать или может кто знает решение проблемы?

Знаю, что в других версиях такой проблемы нет, устанавливал - знаю. Но эта мне нравится больше своей лаконичностью.

Screenshot_2020-12-04-05-26-33-844_com.android.chrome.jpg

Screenshot_2020-12-04-05-26-05-717_com.android.chrome.jpg

comment_165830

Для сильных духом: в файле uploads/javascript_bimchatbox/front_front_chatbox.js найти 

e.lmn1=!1,"function"==typeof

и заменить на

e.connected(),e.lmn1=!1,"function"==typeof

Я особо сильно не проверял, там всё обфусцировано, но после этого патча начинает коннектиться после разрыва.

  • Author
comment_165834
1 час назад, Desti сказал:

Для сильных духом: в файле uploads/javascript_bimchatbox/front_front_chatbox.js найти 


e.lmn1=!1,"function"==typeof

и заменить на


e.connected(),e.lmn1=!1,"function"==typeof

Я особо сильно не проверял, там всё обфусцировано, но после этого патча начинает коннектиться после разрыва.

Спасибо большое! Всё получилось! :bo:

Правда там даже параметра не было.

e.lmn1=!1
  • Author
comment_165837

Возьму в качестве примера несколько лишних параметров.
Было так:

e.param2=!1}e.param1=!1,"function"==typeof D&&D()})

Стало так:

e.param2=!1}e.param1=!1,e.connected(),e.lmn1=!1,"function"==typeof D&&D()})

 

Ещё раз спасибо! :)

comment_165838

Похоже, у вас чуть другая версия, e.lmn1=!1 можно удалить, это то же самое, что e.param1=!1 

Надеюсь, это единственный глюк.

  • Author
comment_165840
7 минут назад, Desti сказал:

Похоже, у вас чуть другая версия, e.lmn1=!1 можно удалить, это то же самое, что e.param1=!1 

Надеюсь, это единственный глюк.

Действительно!) Убрал, всё по-прежнему работает)
А можешь вкратце рассказать про эту строчку, не совсем понятно, какая функция за что отвечает

comment_165842

Если совсем вкратце, то функция connected() отвечает за "включение" области чата, отключение кнопки Connecting и сообщения об ошибке.

return this.lmn5 = !1, $(".bimcb_chatArea").show(), $(".cbDisconnect").remove(), $(".cbDisconnectMSG").remove(), !1

Автор плагина, похоже,  забыл добавить эту функцию в ветку успешного соединения, поэтому всё работает до разрыва связи, а после него не может восстановить область чата и убрать кнопки. Чисто визуальный глюк, чат при этом работает как обычно, соединяется и получает сообщения.
 

  • Author
comment_165849
2 часа назад, Desti сказал:

Если совсем вкратце, то функция connected() отвечает за "включение" области чата, отключение кнопки Connecting и сообщения об ошибке.


return this.lmn5 = !1, $(".bimcb_chatArea").show(), $(".cbDisconnect").remove(), $(".cbDisconnectMSG").remove(), !1

Автор плагина, похоже,  забыл добавить эту функцию в ветку успешного соединения, поэтому всё работает до разрыва связи, а после него не может восстановить область чата и убрать кнопки. Чисто визуальный глюк, чат при этом работает как обычно, соединяется и получает сообщения.
 

Может попробуем реализовать так, чтобы он автоматом всё это делал. Готов выступить в качестве подопытного кролика)

comment_165850

В смысле обновить плагин? Да это не сложно, один файл в tar-е отредактировать. Но сначала надо понять, почему у нас версии разные. Вы откуда его взяли?

  • Author
comment_165851

Я скачивал несколько версий, одну здесь, другую потестировать с ipb-board.ru

6 минут назад, Desti сказал:

В смысле обновить плагин? Да это не сложно, один файл в tar-е отредактировать. Но сначала надо понять, почему у нас версии разные. Вы откуда его взяли?

Ну я имею ввиду, что не нужно было нажимать кнопку реконнект, и вообще этого окна не было, если сессия установлена

  • Author
comment_165854
5 минут назад, Desti сказал:

У меня оказалась 4.1.0 с ipb-board. 

Не, ковыряться в чужом коде не буду, лень. 

Да, она как раз у меня сейчас установлена. Пытаюсь убрать копирайт из раздела смайликов, везде ссылки почистил, сам блок копирайта закрыл тегом hidden. Все работает до тех, пор пока не поставлю какой-нибудь еще сторонний плагин. В итоге копирайт опять переписывается в front_front_chatbox.js

Screenshot_2020-12-05 Ламповый чатик - Саранский городской форум.png

Не подскажешь как можно его вообще оттуда выдернуть и он больше не появлялся никогда? :)

https://forumsaransk.ru/

  • Author
comment_165855

Пока нашёл топорный вариант ограничить права на запись файлу front_front_chatbox.js. В идеале конечно хочется разобраться, где сидит этот код, который чекает скрипт и перезаписывает его. :)

  • Author
comment_165856
2 часа назад, deeverbs сказал:

Пока нашёл топорный вариант ограничить права на запись файлу front_front_chatbox.js. В идеале конечно хочется разобраться, где сидит этот код, который чекает скрипт и перезаписывает его. :)

Работает к сожалению временно, до тех пор пока не будет установлен какой-нибудь плагин или приложение :ac:

  • Author
comment_165857

Проблема ещё в том, что этот баг записывается в файл тоже, и проблема с подключением возникает опять

comment_165858

Любые изменения в коде будут откатываться к исходному состоянию при установках-перестановках в админке. Чтобы этого не происходило, надо открыть оригинальный tar приложения, в нем заменить код на нужный и переустановить приложение обычным способом. Или отредактировать файл data/javascript.xml, там исходный код этого скрипта. То же самое с темплейтами.

Строчка копирайта живет в скрипте.

4 часа назад, deeverbs сказал:

В идеале конечно хочется разобраться, где сидит этот код, который чекает скрипт и перезаписывает его.

Не нужно этого делать. 

  • Author
comment_165861
5 часов назад, Desti сказал:

Любые изменения в коде будут откатываться к исходному состоянию при установках-перестановках в админке. Чтобы этого не происходило, надо открыть оригинальный tar приложения, в нем заменить код на нужный и переустановить приложение обычным способом. Или отредактировать файл data/javascript.xml, там исходный код этого скрипта. То же самое с темплейтами.

Строчка копирайта живет в скрипте.

Не нужно этого делать. 

Спасибо большое за инфу)

  • Author
comment_165865
3 часа назад, zxcoikio сказал:

есть версии без шифрованного скрипта гуглите

Пересоберу tar, как будет время. Самому интересно стало)

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.


Guest
Ответить в этой теме...

Последние посетители 0

  • No registered users viewing this page.