Статус пользователя

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

Вы можете использовать её, чтобы сообщить всем, что вы временно недоступны, находитесь в длительном отпуске, или просто поделиться своим настроением.

:information_source: Теперь вы можете протестировать эту функцию на try.discourse.org

Как использовать

Чтобы установить пользовательский статус, перейдите в меню пользователя и нажмите кнопку Установить пользовательский статус (она может выглядеть немного иначе, если вы ещё не включили новое меню пользователя):

Затем выберите эмодзи и описание, а при желании установите таймер автоматического удаления. Например, вы можете установить статус «:palm_tree: отпуск» до 9 октября:

и все участники форума увидят его. Например, в ваших публикациях:

Чтобы очистить статус, откройте модальное окно статуса и нажмите кнопку удаления:

Как включить эту функцию на вашем форуме

Чтобы включить эту функцию, найдите настройку enable user status:

После включения все участники вашего форума смогут устанавливать пользовательское сообщение о статусе.

43 лайка

Из любопытства, проводилось ли какое-либо расследование по синхронизации этого с Outlook или MS Teams? Как я могу получить к нему доступ через API?

8 лайков

Крутая фича.

Кажется, я помню похожую функцию через плагин, которая позволяла устанавливать часы доступности. Это полезно на форумах, где вы общаетесь с людьми в их рабочие часы.

Но я не могу её найти.

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

4 лайка

Я однажды написал простой аналог, позволяющий визуализировать рабочие часы участников относительно их часовых поясов: GitHub - paviliondev/discourse-team-timezones: A dashboard is placed at the top of specified category topic lists to show waking hours of specified group, e.g. staff · GitHub

Однако существует более продвинутое корпоративное решение, но оно несколько отличается.

6 лайков

Идея интеграции с календарями уже обсуждалась. Мы пока не проводили глубокого расследования, но предполагаем, что могут возникнуть сложности с аутентификацией.

Существует функция «Не беспокоить», в которой есть настройки для «расписания уведомлений»: Do not disturb mode

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

8 лайков

С помощью обратной разработки API Discourse? :person_shrugging:

Если в Outlook или другой системе есть вебхуки, теоретически можно настроить обновление статусов в Discourse.

3 лайка

Это была моя первая мысль, но я не вижу много вариантов:

Я вижу своё имя пользователя в ответе, но не в запросе. Мне кажется, что статус может быть установлен только пользователем в рамках существующей сессии. Я что-то упускаю? Есть ли способ указать через API имя пользователя для установки статуса?

3 лайка

Я думаю, что вы просто используете глобальный API-ключ и передаёте пользователя, которого хотите изменить, в заголовке как user.

4 лайка

Мне только кажется, или эти иконки смещены (слишком низко / выровнены по низу текста вместо верха или центра)?

image

image

image

7 лайков

Вы правы, на данный момент можно установить статус только текущего пользователя, вы ничего не упускаете.

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

Да, это определённо можно улучшить. Я займусь этим, спасибо за сообщение!

8 лайков

Отличное применение ограниченных ключей API — либо установка статуса для одного пользователя, либо для всего сайта. статус: :calendar: На совещании

10 лайков

На мобильном эмодзи отображается слева. Почему так?

2 лайка

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

3 лайка

Вот исправление:

Вот исправление этой проблемы:

9 лайков

Спасибо, теперь всё выглядит отлично :grin:

3 лайка

Так что, если я сменю тему, статус исчезнет, и мне придётся настраивать его заново :thinking:.

4 лайка

@robotnjik, спасибо за сообщение! Я смог воспроизвести проблему: похоже, что переключение между любыми темами сбрасывает статус пользователя. Я это исправлю.

8 лайков

Оказалось, что статус очищался не только при смене темы, но и при редактировании практически любых пользовательских настроек, кроме самого статуса.

Это исправляет проблему:

10 лайков

Этот PR добавляет область действия REST API для статуса пользователя:

Теперь это возможно. Обратите внимание, что для этого вам нужно использовать API-ключ с уровнем «Все пользователи»:

Подробнее об использовании REST API Discourse можно узнать здесь – Discourse REST API Documentation.

13 лайков

Существует ли вебхук, который срабатывает при установке статуса?

5 лайков