Добавление записи в ленту

Здравствуйте.

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

Сообщение нужно формировать на клиенте.

Версия BPM 7.7.0.2325

Нравится

10 комментариев

Здравствуйте!

Уведомления ленты приходят в трех случаях:
1) Пользователь был упомянут через @ (например, @Supervisor)
2) Комментарий пользователя был прокомментирован
3) Комментарий пользователя понравился другому пользователю.

В иных случаях уведомления ленты не приходят.
Для того, чтобы сообщение появилось в ленте пользователей, которые подписаны на запись, Вам достаточно просто создать новую запись в объекте "Сообщение/Комментарий" (SocialMessage). Поля, которые необходимо заполнить:
1) Схема - Uid схемы контрагент
2) Экземпляр объекта - Id записи в объекте "Контрагент"
3) Сообщение/комментарий - само сообщение.

Алексей спасибо, с этим понятно. Но нужно по сообщению создать уведомления пользователям подписанным на запись контрагента. Подскажите как это сделать?

"Дашкевич К." написал:

Алексей спасибо, с этим понятно. Но нужно по сообщению создать уведомления пользователям подписанным на запись контрагента. Подскажите как это сделать?

Теоретически - это возможно. Практически - нужно пробовать и экспериментировать. Можно сделать процессом (предполагаю, что 3 настраиваемых элемента будет достаточно).

1) Стартовый сигнал по событию добавления записи в объект "Сообщение/комментарий"
Условие: Родительское сообщение - не заполнено

2) Чтение данных по объекту "Сообщение/комментарий" с фильтром Id = Идентификатор стартового сигнала

3) Добавление данных в объект "Уведомления ленты" в режиме выборки из объекта "Подписка"
Фильтр выборки: Экземпляр объекта == Экземпляр объекта из чтения данных
Добавляем:
Владелец - Из выборки Пользователь.Контакт (как вариант Пользователь.Контакт.Id)
Сообщение - идентификатор стартового сигнала
Тип - выберите нужный тип из справочника "Тип уведомления ESN" (или предварительно добавьте его)
Прочитанное - false.

4) Конец процесс

Идея такая. Прошу Вас по факту реализации отписаться, что было изменено и получилось ли осуществить данную задачку.:smile:

Алексей спасибо, Ваше решение работает но не совсем, в центре сообщений на вкладке ленты (вторая слева) уведомления есть, но не появляться красный круг с цифрой.
Не подскажите чего не хватает.

Всего хватает. Используйте существующий тип из справочника "Тип уведомления ESN" (например, Ваша запись была прокомментирована). В результате уведомление придет.

Алексей, так и делаю. Напрямую смотрю в таблицу ESNNotification записи есть, не прочитанные, но оповещения по ним нет. Также попробовал прокоментировать записи и лайкнуть, по этим действия тоже не приходят оповещения.
Подскажите в чем может быть дело? и возможно ли проверить работает ли механизм оповещения? где найти его реализацию?

Посмотрите реализацию ESNNotificationProvider, как он отбирает уведомления, как реализован ESNNotificationProcess Алексей уже рассказал, но может посмотрев реализацию в системе удастся понять в чем проблема

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

Александр, спасибо.

Показать все комментарии