Мы используем плагин Zendesk для управления ответами сотрудников на темы форума. Однако когда тема помечается как «Решено» на форуме, это не обновляет Zendesk, и мы не можем закрыть соответствующий тикет. Меня интересует: есть ли какие-либо метаданные у тем в момент выбора решения? И можно ли отправить в Zendesk какой-либо триггер для обновления связанного тикета?
Я понимаю, что было бы полезно иметь в Zendesk какое-то указание на то, что тема помечена как решённая в Discourse. В идеале, что бы вы хотели, чтобы происходило, когда тема помечается как решённая в Discourse? Должен ли тикет в Zendesk закрываться? Альтернативой может быть добавление тега к тикету в Zendesk, когда тема помечается как решённая в Discourse.
Создаётся TopicCustomField с именем "accepted_answer_post_id".
Можно настроить веб-хук события «Решено», который будет отправлять POST-запрос с деталями о решении. Не уверен, можно ли настроить Zendesk для обработки входящих POST-запросов. Вы знаете, возможно ли это?
Привет, Саймон,
В идеале я хотел бы, чтобы соответствующий тикет в Zendesk помечался как «Решён» с тегом, указывающим на пост форума, который стал решением.
Ага, это очень полезно! В худшем случае я могу настроить приложение Vercel для опроса Discourse на наличие постов с этим тегом, а затем обновлять Zendesk. Это не идеально, так как потребуется запускать его как cron-задачу, но это лучше, чем делать всё вручную.
Да, API Zendesk довольно богатый и может обрабатывать различные типы запросов. Вебхук должен уметь отправлять PUT, так как именно такой запрос ожидает Zendesk для обновления тикета, но в остальном это должно быть тривиально. Подробнее см. в их документации по API.
Похоже, что API Discourse использует только POST-запросы в своих вебхуках. Мне придётся поэкспериментировать с этим; возможно, мне всё же понадобится настройка Vercel, но теперь она будет принимать POST, который затем инициирует PUT-запрос в Zendesk. Надеюсь, найдётся более чистое решение, чем это.