Возможность привязки постов к родительской теме в интеграции со Slack

Я обдумывал это и изучил документацию по API chat.postMessage в Slack, и, думаю, могу свести свою простыню текста к чему-то гораздо более простому.

Только правило watch, а не follow, имеет возможность выбирать потоковые ответы, хотя механизм, который я использую, я пока пытаюсь определить. Или же, @david, что вы думаете о новом фильтре правил thread с приоритетом mute thread watch follow, и о передаче этого правила через trigger_notification для включения поведения, чувствительного к правилам?

  1. Если watch настроен на использование потоков (или определено правило thread), при отправке уведомления о новом посте в канал Slack, если тема поста имеет связанный с ней ts в Slack, опубликовать сообщение в этом потоке Slack, установив thread_ts равным значению ts, полученному от Slack.

  2. При отправке уведомления о новом посте в канал Slack, если тема поста не имеет связанного с ней ts, сохранить возвращённое значение ts для этой темы (чтобы будущие посты по этой теме могли быть объединены в поток, если watch настроен на потоки).

  3. При использовании команды post thread :thread_url сохранить ts потока в созданной теме, который будет использоваться только правилами watch для потоков.

Вот мои текущие мысли и опасения:

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

  2. Передача исходного URL сообщения в Slack и идентификатора потока через поток транскрипции — это то, что сейчас кажется мне наиболее непрозрачным. Похоже, мне действительно нужно добавить идентификатор потока для каждого провайдера в каком-то месте и сохранить его до сохранения поста. Я бы реализовал это только для ts в Slack, но, вероятно, это не будет единственной интеграцией чата с потоками.

  3. Для публикации, думаю, мне нужно хранить ts Slack в пользовательском поле, специфичном для Slack, в теме, а не в общем пользовательском поле DiscourseChat для потока.

1 лайк