Ruby on Rails

Layout ERB con credenciales cifradas e identificación del current_user.

Antes de empezar

  • Rails 7 o superior

1. Credenciales

bin/rails credentials:edit

2. Partial y layout

app/views/shared/_tinkay.html.erb
<% settings = { token: Rails.application.credentials.dig(:tinkay, :messenger_token) } %><% if user_signed_in? %>  <% settings[:visitor] = { email: current_user.email, name: current_user.name, plan: current_user.plan } %><% end %><script>  window.TinkaySettings = <%= raw settings.to_json %>;</script><script src="https://cdn.tinkay.app/widget.js" async></script>

Verificar la instalación

Entrá a Configuración, Instalación en tu workspace, pegá la URL pública del sitio y tocá Probar instalación. Tinkay busca el script y valida que el dominio esté permitido.

  1. Abrí tu sitio en una pestaña nueva y confirmá que aparece el botón flotante.
  2. En la consola del navegador, escribí window.Tinkay y verificá que devuelve un objeto.
  3. Escribí un mensaje de prueba y confirmá que llega al Inbox.

Errores frecuentes

  • El widget no aparece: el dominio no está en Configuración, Dominios. Agregalo y recargá.
  • Aparece en desarrollo pero no en producción: agregá también el dominio de producción, incluida la variante con www.
  • Content Security Policy: permití https://cdn.tinkay.app en script-src y https://app.tinkay.app en frame-src y connect-src.
  • Turbo y navegación: el loader se monta una sola vez y sobrevive a las visitas de Turbo. No lo reinyectes en turbo:load.

Cómo saber que quedó bien

  • El botón aparece en el layout de la aplicación
  • El Inbox muestra al `current_user`