[{{mminutes}}:{{sseconds}}] X
Пользователь приглашает вас присоединиться к открытой игре игре с друзьями .
Ctrl предыдущая следующая Ctrl Страницы
1 2 3 4 5

Форум «Программное обеспечение» / Скрипт расширяющий возможности чата

Лень Сообщение #85 29 ноября 2023 в 06:30
Кибергонщик
80
ого, если в заезде открыта вкладка с общим чатом и прыгаешь в следующий заезд, открывается общий чат, а не чат заезда. Это подбешивало
Душа_Чата Сообщение #86 29 ноября 2023 в 06:33
Маньяк
2
Лень писал(а):
ого, если в заезде открыта вкладка с общим чатом и прыгаешь в следующий заезд, открывается общий чат, а не чат заезда. Это подбешивало


Там выставляется настройка по умолчанию. Если ты нажал в заезде кнопку Tab и переключился в общий чат, то в следующих заездах вкладка будет автоматически переключаться на общий чат, если в заезде опять нажал на кнопку Tab и переключился тем самым на чат заезда, ты автоматически в чате заезда и будешь продолжать сидеть. Логика запоминания последнего включения месторасположения в чате.
Лень Сообщение #87 29 ноября 2023 в 06:56
Кибергонщик
80
вот и я об этом, это хорошо
Душа_Чата Сообщение #88 30 ноября 2023 в 05:36
Маньяк
2
1. Добавлена новая функция banSpammer() которая будет удалять все сообщения спамера в том случае, если его скорость отправки сообщений превысит допустимое количество сообщений за определённое время в миллисекундах. То-есть не более двух сообщений за 1 секунду. Эти настройки можно менять на своё усмотрение, но дефолтные отрабатывают хорошо.

Настройки меняются здесь

  // Constants for the time difference threshold (in milliseconds) and message limit
  const timeDifferenceThreshold = 1000; // Increased to 1 second
  const messageLimit = 2; // Set this value to 2 (more than 2 messages in 1 second)
Последний раз отредактировано 30 ноября 2023 в 05:42 пользователем Душа_Чата
Душа_Чата Сообщение #89 2 декабря 2023 в 03:07
Маньяк
2
1. Функция удаления одинаковых и похожих сообщений removeSpamMessages теперь удаляет одинаковые и похожие сообщения отдельного пользователя.
Раньше схожесть сообщений сравнивалась от сообщений пользователей всего чата.

К примеру, если бы один пользователь сказал бы слово да и другой повторил бы это же слово, то последнее сообщения пользователя удалилось бы. Теперь этого не произойдёт, ведь сравнение похожих сообщений теперь не распространяется на всех пользователей разом, а только в рамках конкретного пользователя.
Последний раз отредактировано 2 декабря 2023 в 03:07 пользователем Душа_Чата
Душа_Чата Сообщение #90 3 декабря 2023 в 00:26
Маньяк
2
1. Функция banSpammer стала лучше. Теперь помимо удаления сообщений вышедших за допущенный лимит сообщений в секунду, где ещё показываются какие-то проскакивающие сообщения, дающие шанс пользователю ещё пробиться в чат (шансы исправления), так теперь ещё учитывается количество выходов за лимит, после которого выдаётся бан, что исключает возможность увидеть хоть какие-то сообщения от спамера.
Душа_Чата Сообщение #91 11 декабря 2023 в 09:02
Маньяк
2
Добавлено крупное обновление для списка пользователей чата. Работает пока что только в общем чате.
1. Обновляемый список чата без видимых артифактов прорисовки, как это бывает в старом списке пользователей. Всё потому, что там список пользователей обновляется всегда полностью, когда как в моей версии списка удаляются только те пользователи, которые на самом деле вышли без обновления всего списка. Тоже самое и с добавлением.
2. Пользователи окрашиваются в ранговые цвета.
3. Пользователи сортируются по рангам. Каждый ранг имеет свою общую группу ранга куда помещаются аналогичные по рангу пользователи.
4. Размер и чёткость аватарок повышены, засчёт использования прямой ссылки на профильные аватарки, которые значительно больше по разрешению.
5. По наведению на аватарку она увеличивается в x2 от оригинального размера с плавным увеличиванием и уменьшением при потери фокуса курсором.
6. Добавлены новые иконки для перехода в профиль, обозначение отслеживаемых пользователей и иконка модератора. (profile, tracked, moderator).
7. Иконка модератора отличительная от всех градиентной заливкой.
8. Добавлена иконка :mellow: смайлика для тех, у кого нет аватарки. Считаю это более удачным обозначением чем [ пусто ].
9. Все иконки в SVG формате, поэтому их чёткость будет всегда на высоте при любых разрешениях монитора и масштаба вьюпорта.
10. Работоспособность приватного чата так-же работает как и в старом чате по клику на ник LMB.

Демонстрация

скрытый текст…


Естественно превосходная внешность будед достигнута лишь используя тёмную тему.

UPD

11. Добавлена анимация для иконки профиля вращение с лёгким масштабированием для визуального понимания кто зашёл.
Последний раз отредактировано 11 декабря 2023 в 19:35 пользователем Душа_Чата
Душа_Чата Сообщение #92 12 декабря 2023 в 20:44
Маньяк
2
1. Исправлена ошибка, когда с api запрашивается status title, вместо main title. Потому что в status title может быть имя клавокодера и имя какого-нибудь организатора событий, который не впитсывается в наименования рангов, из-за чего скрипт вёл себя некорректно. Могли создаваться дубликаты пользователей, пользователи не добавлялись в ранговые группы и в консоли сыпались ошибки о ненайдённом классе.

2. Был исправлен недочёт, когда новая панель пользователей перекрывала панель смайликов. Теперь панель смайликов показывается уровнем выше засчёт назначения ему css свойства z-index: 1; Так-же добавлен фоновый тёмный цвет как в тёмной теме, потому что панель изначально с прозрачным фоном.
Последний раз отредактировано 12 декабря 2023 в 20:46 пользователем Душа_Чата
Душа_Чата Сообщение #93 13 декабря 2023 в 09:05
Маньяк
2
Небольшой фикс. Новая панель пользователей и смайликов окрашиваются фоном элемента .chat .messages, чтобы иметь один и тот же цвет при дефолтной светлой темы сайта и тёмной через stylish.

Демонстрация

скрытый текст…
Последний раз отредактировано 13 декабря 2023 в 09:25 пользователем Душа_Чата
Душа_Чата Сообщение #94 13 декабря 2023 в 10:46
Маньяк
2
1. Вместо оджной mehSVG иконки (:mellow:) добавлены ещё две иконки (:smile: и :frown:), которые рандомно назначаются безаватарочным юзерам.

Демонстрация

скрытый текст…


2. При появлении пользователя в чате, иконка перехода в профиль юзера только крутится на 360 градусов, а при наведении на иконку дрожит и после увода курсора тоже делает финальный прокрут.

Демонстрация

скрытый текст…
Последний раз отредактировано 13 декабря 2023 в 10:48 пользователем Душа_Чата
Душа_Чата Сообщение #95 16 декабря 2023 в 21:42
Маньяк
2
Добавлен абсолютно новый функционал

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

a. Раздел, где отображается оставшееся время до следующего автоматического удаления кэша из браузера, чтобы на следующий день отобразить пользователей в возможно новосменившемся ранговом цвете.
b. Раздел с двумя кнопками. Кнопка с крестиком скрывает панель, а кнопка с корзиной принудитель чистит кэш с обновлением страницы.

Демонстрация

скрытый текст…
Последний раз отредактировано 16 декабря 2023 в 22:09 пользователем Душа_Чата
Душа_Чата Сообщение #96 17 декабря 2023 в 09:16
Маньяк
2
1. Изменён шрифт остаточного времени для автоматического удаления кэша пользователей на Google Orbitron Font.

Демонстрация
скрытый текст…


2. Панель стала плавно появляться и удаляться по нажатию на кнопку с иконкой базы данных из панели кнопок.

Демонстрация
скрытый текст…
Душа_Чата Сообщение #97 23 декабря 2023 в 20:40
Маньяк
2
1. Добавлена возможность настраивать время, спустя которое будет происходить автоматическое удаление кэша с данными о рангах пользователей для нового списка пользователей чата.

Как это устроено подробнее в видео: https://imgur.com/a/uYattqf

2. Был изменён шрифт с Orbitron на Roboto Mono для цифр таймера и ID профилей.
Последний раз отредактировано 23 декабря 2023 в 20:43 пользователем Душа_Чата
Душа_Чата Сообщение #98 24 декабря 2023 в 16:44
Маньяк
2
1. Описания цифровых блоков были сокращены до одного понятного слова.
скрытый текст…


2. Теперь после автоматического, ручного сброса кэша страница уходит в перезагрузку и после перезагрузки через 2 секунды автоматически показывает панель, для видимости проделанных результатов очистки.

3. По клику на цифровой блок (Threshold) и указания валидного [ настраиваемого ] времени, спустя которое будет происходить автоматический сброс кэша также будет происходить обновление страницы и автоматический показ кэш панели.

4. Перед каждым автоматическим и ручным сбросом кэша будет показываться [ alert ] предупреждение о том какой режим очистки на данный момент происходит.
Последний раз отредактировано 24 декабря 2023 в 16:52 пользователем Душа_Чата
Душа_Чата Сообщение #99 24 декабря 2023 в 22:48
Маньяк
2
Добавлен абсолютно новый функционал и некоторый был переделан.

1. Переделано. Чат по Ctrl + Space теперь не закрывается обычными средствами клавогонок, а полностью скрывается из виду, тем самым позволяя мониторить скрипту за происходящим в чате, ведь html элементы в нём не удаляются. Тем самым за счёт этого повышается быстрота скрытия и показа.

2. Добавлено. Когда чат скрывается по Ctrl + Space, то вы всё-равно будете видеть сообщения из чата, но теперь только в виде всплывающих плашек. Подмечаю: (Только по Ctrl + Space, не по нажатию на кнопку скрыть чат).
скрытый текст…

Работает данный функционал только с общим чатом. Сообщения из чата заезда всплывать не будут. Как минимум не проверялась работоспособность.

GIF анимация, как это происходит вживую.
скрытый текст…


Ограничение по количеству сообщений настраивается внутри кода именно тут
  // Set the maximum number of popup messages to display globally
  const maxPopupMessagesCount = 10;


UPD >> к проделанному добавилось изменение в цветовом оформлении всплывающих сообщений.
Они теперь окрашиваются в разные цвета. И для текущей сессии до перезагрузки страницы они остаются неизменными для конкретного пользователя.
Это сделано для того, чтобы не сливалось всё в один зелёный цвет и повысить зрительную привязку к разным пользователям. Понимать, кто есть кто и где чьи сообщения.
скрытый текст…
Последний раз отредактировано 25 декабря 2023 в 01:06 пользователем Душа_Чата
Душа_Чата Сообщение #100 26 декабря 2023 в 23:52
Маньяк
2
1. Надписи зашёл, вышел (зашла, вышла) во всплывающем оповещении и в статичных оповещениях чата были заменены на характерные иконки. Во всплывающем оповещении было к тому же добавлена информация о времени.
скрытый текст…


2. Во всплывающих сообщениях добавлена поддержка отображения кода смайликов и отображения текста ссылок к всплывающим сообщениям. В изначальной реализации была поддержка только текста.
скрытый текст…


3. Добавлены возможно последние фиксы на ручное удаление сообщений выделением RMB. Теперь для сравнения берётся не содержимое сообщения, а время и ник, что нивелирует проблемы с несовпадениями. https://imgur.com/a/SPaD916
Последний раз отредактировано 27 декабря 2023 в 04:06 пользователем Душа_Чата
Душа_Чата Сообщение #102 27 декабря 2023 в 20:57
Маньяк
2
1. Кажется это победа!
Вероятно мне удалось всё-таки научить алгоритм ручного удаления сообщений удалять их взаправду, без ошибки их очередного появления после обновления страницы. Теперь не важно что это. Будь то просто текст, текст содержащий в себе смайлик или ссылку или комбинацию из этих типов. Также характерная проблема была, когда ютубовские ссылки были уже сконвертированы в iframe элементы, которые также после перезагрузки страницы вновь показывались вместе с конвертированными картинками. Теперь всё удаляется и после обновления страницы не возвращается. Ура!

Демонстрация

2. Добавилась прикольная функция удаления уведомлений о зашедших и вышедших отслеживаемых пользователей в чате. Достаточно кликнуть на одно из уведомлений и начнётся обратное удаление элементов с небольшой задержкой.

Демонстрация
Последний раз отредактировано 27 декабря 2023 в 22:14 пользователем Душа_Чата
Душа_Чата Сообщение #103 28 декабря 2023 в 03:52
Маньяк
2
1. К существущему алгоритму борьбы со спамом удаления 100% совпадений и частично совпадающих сообщений, добавилось ещё мгновенное удаление всех сообщений в чате, если кто-то удосужится отправить в чат спецсимволы. Удаляться не будут лишь сообщения с содержанием диапазона ru, en символов в нижнем и верхнем регистре. Цифры и обыденные символы, а также имеется поддержка знака ударения и сохранена возможность вставлять эмодзи смайлики. Остальное всё сметается.

UPD. Небольшая поправка. Теперь удаление всех сообщений будет происходить только по прошествии порога максимального количества вставленных запрещённых символов, а именно величина константы, что позволит повставлять хоть немного символов, перед тем, как алгоритм запретит баном.

  // Maximum number of consecutive times a user is allowed to exceed the message limit
  const thresholdMaxTries = 5;
Последний раз отредактировано 28 декабря 2023 в 12:23 пользователем Душа_Чата
Душа_Чата Сообщение #104 29 декабря 2023 в 01:37
Маньяк
2
1. Расширено количество максимального количества попыток спама с 5 до 10.
// Maximum number of consecutive times a user is allowed to exceed the message limit
  const thresholdMaxTries = 10;


2. Добавлено большее число символов, которые разрешены для отправки в чат, чтобы не засчитывалось как возможный спам.
скрытый текст…
Последний раз отредактировано 29 декабря 2023 в 01:38 пользователем Душа_Чата
Душа_Чата Сообщение #105 29 декабря 2023 в 18:36
Маньяк
2
1. При клике на один из элементов уведомления из чата о зашедшем пользователе в чат добавилась автоматическая плавная прокрутка до следующего удаляемого (удаляемых) уведомления(й) и автоматической прокрути обратно к актуальным сообщениям по окончанию удаления всех уведомлений.

Демонстрация
Последний раз отредактировано 29 декабря 2023 в 23:07 пользователем Душа_Чата

Чтобы писать в форуме, нужно зарегистрироваться.

Ctrl предыдущая следующая Ctrl Страницы
1 2 3 4 5

Связаться
Выделить
Выделите фрагменты страницы, относящиеся к вашему сообщению
Скрыть сведения
Скрыть всю личную информацию
Отмена