Nuestro equipo está configurando nuestro nuevo sitio de Discourse y utilizando el plugin de Zendesk. Hemos logrado que la sincronización bidireccional funcione y todo va bien.
Sin embargo, hay ocasiones en las que nuestros miembros pueden solicitar un restablecimiento de contraseña o nosotros podemos necesitar compartir información personal. ¿Hay alguna forma de mantener la sincronización bidireccional de mensajes entre Discourse y Zendesk si el tema se mueve a un tema privado? ¿O alguien puede pensar en una solución alternativa que nos permita responder a los tickets en mensajes privados?
Encontré el mismo problema y pude resolverlo modificando la lógica del código del Plugin de Zendesk. Aquí está la solución:
En el archivo del Plugin de Zendesk:
app/jobs/regular/zendesk_job.rb
Realiza los siguientes cambios:
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
En el Plugin de 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
Creo que el problema ocurre porque los temas de categorías privadas no tienen una categoría asignada, lo que les impide sincronizarse con Zendesk según la lógica de código actual.
Para resolver esto, modifiqué la lógica para permitir que los temas se creen en Zendesk incluso si no se asigna una categoría. No estoy completamente seguro de si este es el mejor enfoque, pero funcionó para mí.
Después de realizar estos cambios, pruébalo para asegurarte de que resuelve el problema también para ti.
Para manejar asuntos delicados como restablecimientos de contraseña, puedes intentar mover el tema a una categoría privada a la que solo el personal pueda acceder. La parte complicada es que las categorías privadas podrían no sincronizarse con Zendesk debido a cómo funciona el plugin.
La solución de @abinash889 es acertada. El problema ocurre porque los temas privados a menudo no tienen una categoría asignada, por lo que no se sincronizan. Al ajustar el código del plugin de Zendesk como explicaron, puedes hacer que funcione permitiendo que los temas sin categoría se sincronicen.
Si estás de acuerdo con editar el plugin, inténtalo y pruébalo. De lo contrario, podrías manejar estas solicitudes delicadas directamente en Zendesk.