Felsökning
Använd den här sidan när widgeten är installerad men inte beter sig som förväntat.
Widget visas inte
Kontrollera webbläsarkonsolen först. ChattyBox rapporterar att det saknas obligatoriska attribut där.
Vanliga orsaker:
- Skriptet saknas i både den distribuerade HTML-koden och den aktiva DOM:en.
- Skriptet lades till i fel mall, layout, tagghanterarebehållare eller CMS kodområde.
- Skriptet ligger bakom en samtyckesregel eller tagghanterareutlösare som inte aktiverades.
- Applikationskomponenten som monterar loadern körs aldrig på den rutten.
- En säkerhetspolicy för innehåll blockerar
https://chattybox.ai/widget.js. - CSS eller en annan widget överlappar öppningsknappen.
- Den distribuerade konfigurationen har
widget.enabled: false.
Minsta fix:
- Öppna den distribuerade offentliga sidan i ett inkognitofönster.
- Sök i sidkällan och webbläsarens Elements-panel efter
chattybox.ai/widget.js; en loader som injiceras av SDK eller JavaScript kan bara synas i den aktiva DOM:en. - Bekräfta att skriptet visas en gång och inkluderar
data-api-keyochdata-api-url. - Flytta skriptet till den globala sidfoten, applayouten, Docusaurus roten eller GTM Alla sidor utlösaren om den saknas.
För konfigurationshanterade projekt hindrar widget.enabled: false den hostade widgeten från att initieras och gör att offentliga POST /chat-anrop returnerar 403 Widget is disabled, även anrop från headless-SDK:n. Ändra inställningen via konfigurationsdistributionen, inte genom att rotera den offentliga nyckeln. Om loader-skriptet tas bort efter initiering försvinner inte widgeten som redan har renderats.
Saknar data-api-url
Widgeten avslutas tidigt när data-api-url saknas.
Använd hela kodavsnittet från instrumentpanelen eller lägg till det obligatoriska attributet:
<script
src="https://chattybox.ai/widget.js"
data-api-key="YOUR_API_KEY"
data-api-url="YOUR_WIDGET_API_URL"
async
></script>
Använd API-URL:en från instrumentpanelen i stället för att gissa. I produktion förväntas den vara en stabil https://...convex.site/chat-URL.
Ogiltig API Nyckel- eller ursprungsfel
Av säkerhetsskäl returnerar widgetens API-slutpunkter samma generiska 401 Invalid API key-svar för okända, utgångna eller origin-avvisade publika nycklar. Använd inte svaret för att avgöra orsaken.
Vanliga orsaker:
- Den offentliga widgetnyckeln kopierades felaktigt.
- Nyckeln har tagits bort, löpt ut eller kopierats från en annan backend-distribution än API-URL:en.
- Nyckelns projekt eller ägare håller på att tas bort.
- En valfri originbegränsning är aktiverad och sidans origin ingår inte exakt.
Fixar:
- Öppna projektet i instrumentpanelen ChattyBox.
- Öppna Installera → Installation på webbplatsen, ange webbplatsens URL och kopiera ett kodavsnitt som kan användas om ett sådant finns tillgängligt.
- Under Nycklar & domäner på samma sida använder du Redigera origins för nyckeln i det installerade kodavsnittet. Om Begränsa den här nyckeln till specifika origins är aktiverat lägger du till den exakta origin som sidan serveras från, eller inaktiverar den valfria begränsningen. Schema, värdnamn och port måste alla matcha:
https://example.com,https://preview.example.comochhttp://localhost:3000är olika origins. Sökvägar behöver inga separata poster. - Distribuera om eller publicera om webbplatsen och testa igen i ett inkognitofönster.
En giltig nyckel för en annan chatbot på samma backend väljer normalt den chatboten i stället för att ge 401; kontrollera projektet om svaren är oväntade. Nyckelnamn som ”production” och ”staging” låser inte miljöer. HTTP-API:t använder Origin-headern om den finns; endast om den saknas används origin från Referer. En begränsad nyckel avvisar anrop om den valda origin saknas, är ogiltig eller inte är tillåten. En tillåten Referer åsidosätter inte en otillåten Origin. Originbegränsningar ersätter inte besökarautentisering.
Meddelandegränser och hastighetsbegränsningar
Kontrollera Konto och fakturering på /settings/account för meddelandeanvändning, plan och eventuella PAYG-budgetar för Pro/Business. Testchatten och offentlig chatt använder ägarens gemensamma meddelandekvot. Att radera konversationer eller skapa en ny nyckel återställer inte kvoten.
Fel om månadens meddelandekvot och kortvariga anropsbegränsningar är olika saker. Följ Retry-After när den skickas med ett HTTP 429 i stället för att försöka igen upprepade gånger. Vid fel om månadens meddelandegräns väntar du tills kvoten återställs eller ändrar planen/den tillämpliga PAYG-budgeten. Samtal → Historik visar konversationshistorik, inte fel för varje anrop; använd webbläsarens Network-panel för att granska HTTP-fel.
Fel språk
Kontrollera först widgetens språkinställningar under Anpassa → Utseende. Den källaktuella hostade widgeten väljer UI-språk i den här ordningen:
data-localepå widgetskriptet, endast om Tillåt överskrivning via skript är aktiverat och värdet stöds.- I läget Fast används det konfigurerade standardspråket.
- I läget Upptäck automatiskt prövas sidans
<html lang>, därefter webbläsarens språkkandidater och sedan det konfigurerade standardspråket.
Kandidater som inte stöds hoppas över. Engelska är den sista reservlösningen om ingen kandidat stöds; det konfigurerade standardspråket är engelska från början.
Fixar:
- För automatiskt språkval, välj Upptäck automatiskt och ta bort ett felaktigt
data-locale-värde eller inaktivera skriptöverskrivningar. - Ställ in
<html lang="de">,<html lang="fr">eller den matchande språkkoden på lokaliserade sidor. - För att alltid använda det konfigurerade språket, välj Fast och inaktivera Tillåt överskrivning via skript. Om överskrivningar är aktiverade har
data-localefortfarande företräde. - Kontrollera att inställningarna har sparats och initiera om den installerade widgeten för att hämta dashboardinställningar. Den källaktuella hostade
widget.jsv16 kan uppdatera produktens egna etiketter när en ändring av<html lang>eller loadernsdata-localeändrar det valda språket. Kontrollera den distribuerade loader-versionen innan du förlitar dig på liveuppdateringar; detta beteende gäller den hostade loadern, inte den publicerade npm-SDK:n0.1.4. Enlocalesom skickas tillmountWidget()blirdata-localeoch följer samma regler. - Om widgeten är otillgänglig, kontrollera
/widget-config-anropet och den publika nyckeln. I den källaktuella hostadewidget.jsv16 gör en misslyckad konfigurationshämtning att widgeten förblir otillgänglig i stället för att starta med standardinställningar. Kontrollera den distribuerade loader-versionen innan du förlitar dig på detta beteende. - Skrapa om och bekräfta att de önskade publika språkversionerna verkligen indexerades om svaren citerar eller hämtar innehåll från fel språk.
- Widgetens UI-språk styr inte svarsspråket och översätter inte källinnehåll. Svarsgeneratorn identifierar språk utifrån frågan. Indexera varje nödvändig språkversion om svar hämtar innehåll på fel språk. Om ingen anpassad
assistant.fallbackMessagehar konfigurerats använder den tvingade reservtexten för saknat innehåll frågans identifierade språk när det är lämpligt, widgetens UI-språk när språkidentifieringen är osäker och engelska endast som sista reserv.
Inga citat eller svaga svar
ChattyBox använder hämtat källinnehåll för att generera svar. Saknade citat eller svaga svar kan bero på saknat eller olämpligt källinnehåll, problem med hämtningen eller genereringsfel; de visar inte i sig vad orsaken är. Grundning garanterar inte korrekthet.
En grundad RAG-chattbot gynnas av tydligt hämtat källinnehåll, men ett citat i sig verifierar inte ett svar. Jämför varje viktigt påstående med den citerade sidan.
Fixar:
- Ställ samma fråga i instrumentpanelens testchatt och jämför de citerade sidorna.
- Se till att källsidan är offentlig och inkluderad i genomsökningen.
- Lägg till tydliga rubriker, exempel, vanliga frågor och direkt svarstext till källsidan.
- Undvik att förlita dig på skärmdumpar, videor, exkluderad dold markup, innehåll som bara finns i JavaScript eller iframes som enda källa.
- Skrapa om den uppdaterade sidan när spärrtiden tillåter det, vänta på embedding-arbetet och testa sedan igen.
- Leta efter varningen Delvis indexerad: text som överskrider gränsen på 512 KiB per sida sparas inte. Dela upp långa källsidor i stället för att upprepade gånger bygga om samma avkortade text.
- Gör varje fråga tydlig och självbärande när det går. Svarsgeneratorn kan få upp till 12 nyligen sparade meddelanden, högst 2 000 tecken vardera; den får inte hela konversationstranskriptet.
Persona lägger till webbplatsspecifika instruktioner till de inbyggda reglerna för källförankring; den kan inte tillföra indexerat innehåll som saknas eller ersätta reservsvaret vid saknad kontext eller innehållsluckor när det utlöses. Innehållsgappsdetektorn är heuristisk och kanske inte fångar alla svar som saknar stöd i källorna. Reservsvaret har en separat inställning, assistant.fallbackMessage, i konfiguration som kod.
Sidor som inte är skrapade eller gammalt innehåll
Vanliga orsaker:
- Sidan saknas i den inskickade webbplatskartan.
- Manuellt URL-läge inkluderade inte sidan.
- Sidan blockerar vanliga HTTP-hämtningar, kräver autentisering, returnerar en CAPTCHA-/felsida, omdirigerar till ett blockerat mål eller filtreras bort av källurvalet.
- Sidans innehåll ändrades efter den senaste skrapningen.
- Innehållet renderas endast av JavaScript eller ligger utanför den valda semantiska innehållsroten.
- De valda URL:erna överskred sidgränsen, den månatliga uppdateringsbudgeten tog slut eller en inkluderings-/exkluderingsregel filtrerade bort dem.
Fixar:
- Bekräfta att sidan öppnas offentligt i ett privat webbläsarfönster.
- Använd webbplatskartläge för bred täckning eller manuella webbadresser för en utvald uppsättning.
- Skicka in den kanoniska webbadressen istället för en spårningsadress, omdirigeringsadress eller inloggad webbadress.
- Skrapa om efter publicerade innehållsändringar och när uppdateringsspärren tillåter det: tidigast sju dagar efter att det senaste jobbet skapades på Free eller 24 timmar på betalplaner, även om jobbet misslyckades.
- Under Kunskap → Sidor, fäll ut Importhistorik när det finns jobb och välj ett jobb under Skrapjobb. Jämför jobbets antal sparade/valda sidor och listan Sidor med URL:erna du förväntar dig. Slutförd kan omfatta överhoppade eller misslyckade URL:er; Slutförd med varningar gäller specifikt delvis sparad sidtext, inte alla crawl-fel. Gränssnittet visar ingen fullständig fellista per URL.
ChattyBox tillämpar inte robots.txt-direktiv, men kan läsa filen för att hitta sitemap-deklarationer. Behandla inte robots.txt som åtkomstskydd. Säkra HTTP-omdirigeringar följs, så en omdirigering är inte i sig ett fel. Ta inte bort åtkomstskydd och publicera inte privat innehåll för att göra det crawl-bart. Crawlern kör inte JavaScript. Om en URL har tagits bort från webbplatsen eller källurvalet kan den sparade sidan ändå användas; ta även bort den under Kunskap → Sidor och uteslut den från framtida upptäckt. Bygg om index använder sparad text, inte en ny nätverkshämtning. Åtgärden har en egen planbaserad spärrtid och förbrukar den delade månatliga siduppdateringsbudgeten.
Inställningar sparas inte
Ändringar av chatbotdetaljer och källinställningar sparas automatiskt. Kontrollera sparstatusen och åtgärda valideringsfel eller försök igen efter ett misslyckat sparande. Dashboarden kräver en sparad Website URL även när du anger Manual URLs. Upptäckt och autosparande startar inte en import; granska de valda sidorna och starta importen uttryckligen.
Om projektet är Config locked måste konfigurationen distribueras via CLI-arbetsflödet. Låsningen kan inte ångras; Persona-sparande, skrapningskonfiguration, Scrape Now, radering av innehåll och indexombyggnad avvisas även om kontrollerna fortfarande syns. Endast varumärkesinställningen kan fortfarande ändras i dashboardens widgetkonfiguration, beroende på plan. Publika widgetnycklar och deployment-token är separata inloggningsuppgifter.
Om ett projekt saknas eller åtkomst nekas, kontrollera att du är inloggad som dess ägare. En widgetnyckel, distributionstoken eller organisationsmedlemskap ger inte ägarbehörighet till instrumentpanelen. Under Samtal ingår Analys och Obesvarade frågor i Pro och Business; otillgängliga vyer visar en uppmaning att uppgradera. Historik finns på alla planer.
Fortfarande fast
Samla in dessa uppgifter innan du kontaktar support:
- Den offentliga webbadressen där widgeten ska visas.
- En skärmdump eller kopia av ett webbläsarkonsolfel.
- Om sidan använder vanlig HTML, Next.js, Docusaurus, WordPress, en CMS eller Google Tag Manager.
- Om kodavsnittet innehåller
data-api-keyochdata-api-url. - En testfråga som borde fungera och källsidan som besvarar den.