Nossa equipe está configurando nosso novo site Discourse e utilizando o plugin Zendesk. Conseguimos a sincronização bidirecional e tudo está funcionando perfeitamente.
No entanto, às vezes nossos membros podem solicitar uma redefinição de senha, ou podemos precisar compartilhar informações pessoais. Existe alguma maneira de manter a sincronização bidirecional de mensagens entre Discourse <> Zendesk se o tópico for movido para um tópico privado? Ou alguém pode pensar em uma solução alternativa que nos permita responder a tickets em mensagens privadas?
Encontrei o mesmo problema e consegui resolvê-lo modificando a lógica do código do Plugin Zendesk. Aqui está a solução:
No arquivo do Plugin Zendesk:
app/jobs/regular/zendesk_job.rb
Faça as seguintes alterações:
def push_topic!(topic_id)
topic = Topic.find_by(id: topic_id)
return unless topic.present?
if DiscourseZendeskPlugin::Helper.autogeneration_category?(topic.category_id)
topic.post_ids.each { |post_id| push_post!(post_id) }
end
end
No Plugin Zendesk
lib/discourse_zendesk_plugin/helper.rb
def self.autogeneration_category?(category_id)
return true if category_id.nil?
return false if category_id.blank?
if SiteSetting.zendesk_autogenerate_all_categories?
true
else
SiteSetting.zendesk_autogenerate_categories.split("|").include?(category_id.to_s)
end
end
Acredito que o problema ocorra porque tópicos de categorias privadas não têm uma categoria atribuída, o que impede a sincronização com o Zendesk com base na lógica de código atual.
Para resolver isso, modifiquei a lógica para permitir que tópicos sejam criados no Zendesk mesmo que uma categoria não esteja atribuída. Não tenho certeza se essa é a melhor abordagem, mas funcionou para mim.
Após fazer essas alterações, por favor, teste em seu ambiente para garantir que o problema seja resolvido para você também.
Para lidar com assuntos sensíveis como redefinições de senha, você pode tentar mover o tópico para uma categoria privada à qual apenas a equipe pode acessar. A parte complicada é que categorias privadas podem não sincronizar com o Zendesk por causa de como o plugin funciona.
A solução do @abinash889 está perfeita! O problema acontece porque tópicos privados muitas vezes não têm uma categoria atribuída, então eles não sincronizam. Ao ajustar o código do plugin do Zendesk como eles explicaram, você pode fazê-lo funcionar permitindo que tópicos sem categoria sincronizem.
Se você estiver disposto a editar o plugin, tente e teste. Caso contrário, você pode lidar com essas solicitações sensíveis diretamente no Zendesk.