Мне нужна помощь с четырьмя проблемами в Discourse Chat. Если вы считаете, что можете помочь с чем-либо из этого, пожалуйста, свяжитесь со мной:
1. Ошибка: Невозможно выделить текст в редакторе чата на iOS
В окне редактора чата, если вы вводите сообщение и выделяете текст, он подсвечивает слово, но не позволяет изменить выделение, перемещая маркеры по краям слова.
2. Ошибка: Миниатюры видео не отображаются в чате на iOS
На iOS при загрузке файлов MP4 или других видеофайлов миниатюра не появляется.
3. Функция: Каналы чата только для чтения
В настройках канала создайте новую опцию для пометки канала как «Только для чтения». После установки только сотрудники смогут публиковать сообщения в канале.
Если возможно, было бы хорошо ограничить публикацию, но при этом разрешить всем участникам канала отвечать на сообщения в теме.
4. Функция: Отключить электронную почту при использовании @all в чате
При использовании @all мы хотим предотвратить отправку электронных писем, но при этом хотим, чтобы push-уведомления продолжали работать как обычно.
Это отличная новость, и большое спасибо. Мы уже слышали об этой ошибке от нескольких наших пользователей, и было бы замечательно, если бы её исправили для всех пользователей Discourse.
Когда тот же самый видеофайл открывается в Firefox или Chrome, тег video отображается корректно с «предварительным просмотром» (в кавычках, так как, по моему мнению, это не зависит от обработки превью в приложении Discourse). Вы согласны?
Это означает, что с нашей стороны (на стороне приложения) мы ничего не можем сделать?
Я заметил, что проблема возникает только в чатах, где используется HTML-тег <video до начала воспроизведения.
В постах, где превью корректно отображается в Safari, Discourse, по-видимому, использует <div class="video-placeholder-container" и «фейковый» постер видео-заглушки до момента клика, после чего происходит переключение на версию с тегом <video.
Возможно, для этого была причина…
… да, была:
Так что это было оправдано по другой причине? Убить двух зайцев одним выстрелом?
Если есть интерес, я с радостью подготовлю PR с реализацией подхода из постов.
Для справки: мы никогда не реализовывали заглушки для видео в чате — всё работает за счёт возможностей HTML5-тега video. Собственную логику заглушек мы изначально внедрили для тем/постов, потому что видео автоматически «загружали» данные при каждой загрузке темы, даже если не воспроизводились, что приводило к росту расходов на CDN на популярных сайтах.
Пока я не считаю необходимым повторно внедрять в чате ту же логику заглушек, что есть для тем, но, возможно, нам всё же потребуются некоторые правки для iOS/Safari, чтобы всё работало на iOS. Я думал, что атрибут preload="metadata" решит проблему, но, похоже, он уже присутствует.
Привет, @blake — хотел бы также вернуться к этому вопросу. Если это уже было исправлено в другом месте и это можно применить к чату, это было бы отлично.
У нас в сообществе многие пользователи делятся видео, и когда превью отсутствуют, многие считают, что функция видео не работает, поскольку на всех других платформах (SMS, Slack, Discord и т. д.) при публикации видео всегда отображается превью.