Convyra/Documentation
Docs/Plateforme

Dépannage

Les vérifications les plus utiles quand le widget, l’IA ou une intégration ne répond pas.

Le widget ne s’affiche pas

  • Vérifiez que le script contient le data-convyra-project fourni dans Paramètres → Installation.
  • Vérifiez que le widget est activé pour le site dans Sites.
  • Chargez directement /widget.js et contrôlez les erreurs de console ou de Content Security Policy sur le site hôte.
  • Confirmez que APP_ORIGIN correspond au domaine qui sert réellement widget.js et l’iframe.
  • Évitez d’injecter plusieurs fois le script : Convyra n’installe qu’un élément convyra-widget-root par page.

La connexion au dashboard échoue

  • Vérifiez NEXT_PUBLIC_CONVEX_URL, CONVYRA_SESSION_SECRET et CONVYRA_BACKEND_SHARED_SECRET côté Next.js.
  • Vérifiez le même secret backend et CONVYRA_AUTH_ISSUER côté Convex.
  • En local, rejouez npm run setup:secrets après une rotation RSA pour resynchroniser CONVYRA_AUTH_PUBLIC_JWK.
  • Vérifiez que APP_ORIGIN et l’issuer utilisent exactement le même protocole et le bon domaine.

L’assistant ne répond pas

  • Vérifiez que l’assistant et la réponse automatique sont activés pour le projet et la conversation.
  • Vérifiez AI_GATEWAY_API_KEY sur le déploiement Convex, pas seulement dans Next.js.
  • Contrôlez le quota dans Paramètres → Usage & offre.
  • Ajoutez une base de connaissance suffisante : une information absente doit provoquer une reprise humaine.
  • Une réponse humaine récente annule volontairement la réponse automatique prévue.

Un email n’arrive pas

  • Vérifiez LUMAIL_API_KEY et LUMAIL_FROM_EMAIL sur Convex.
  • Si Lumail refuse l’envoi avec une erreur de format d’expéditeur, retirez LUMAIL_FROM_NAME : l’adresse repart alors seule, sans nom affiché.
  • Confirmez que le domaine d’envoi est vérifié et que SPF, DKIM et DMARC sont publiés.
  • Consultez Usage & offre pour distinguer retry, failed et suppressed.
  • Vérifiez que l’adresse du contact n’est pas dans la liste de suppression après un hard bounce ou une plainte.

Telegram ou MCP est refusé

  • Telegram : vérifiez le token, le secret de webhook, l’URL .convex.site et recréez un code de liaison expiré.
  • MCP : vérifiez le préfixe convyra_mcp_, la révocation, les scopes et les projets autorisés.
  • MCP : utilisez l’origine canonique /mcp et un en-tête Authorization: Bearer.
  • Après une rotation de secret backend ou de clé RSA, mettez à jour Next.js et Convex de façon coordonnée.