Siirry pääsisältöön

JavaScript SDK

JavaScript SDK on suositeltu vaihtoehto uusiin kehittäjävetoisiin integraatioihin. Rakenna oma chat-kokemuksesi, ja ChattyBox huolehtii tiedonhausta, lähdeviitteistä, keskusteluista ja skaalauksesta. Jos haluat valmiin käyttöliittymän ilman sovelluskoodia, käytä sen sijaan täysin tuettua hostattua widgetiä.

Ennen aloittamista

  1. Luo projekti ja indeksoi sisältösi.
  2. Testaa tyypillisiä kysymyksiä hallintapaneelissa.
  3. Avaa projektin Upota-välilehti.
  4. Luo tai valitse julkinen widgetin API-avain ja määritä sen sallitut alkuperät.
  5. Kopioi upotuskoodin yhteydessä näkyvä widgetin API-URL.

Julkiset widgetin API-avaimet on suunniteltu näkymään selainkoodissa. Ne yksilöivät projektin, mutta eivät ole hallintatunnuksia. Rajaa selainavaimet verkkotunnuksiin, joista chatbotiasi saa kutsua.

Asennus

bun add @openstaticfish/chattybox

Paketti on ESM-asiakasohjelma nykyisille Node.js- ja selainsovelluksille, jotka tarjoavat fetch-toiminnon.

Viestin lähettäminen

import { Chattybox } from '@openstaticfish/chattybox';

const chattybox = new Chattybox({
apiKey: import.meta.env.PUBLIC_CHATTYBOX_API_KEY,
baseUrl: import.meta.env.PUBLIC_CHATTYBOX_API_URL,
});

const answer = await chattybox.sendMessage({
message: 'How do I get started?',
});

console.log(answer.message);
console.log(answer.sources);

Aseta PUBLIC_CHATTYBOX_API_URL täsmälleen Upota-välilehdessä näkyväksi widgetin API-URL-osoitteeksi. SDK hyväksyy joko käyttöönoton juuri-URL:n tai /chat-päätteisen URL:n.

Vastaus sisältää seuraavat kentät:

KenttäTyyppiKuvaus
messagestringLuotu vastaus.
conversationIdstringTunniste, jolla tätä keskustelua jatketaan.
sourcesstring[]Vastausta varten haettujen lähteiden URL-osoitteet.

Keskustelun jatkaminen

Säilytä palautettu keskustelutunnus käyttöliittymän tilassa ja lähetä se seuraavan viestin mukana:

const followUp = await chattybox.sendMessage({
message: 'Can you explain the second step?',
conversationId: answer.conversationId,
});

Älä käytä samaa keskustelutunnusta toisistaan riippumattomille kävijöille. Luo uusi keskustelu jättämällä conversationId pois heidän ensimmäisestä viestistään.

Virheiden käsittely

import { Chattybox, ChattyboxError } from '@openstaticfish/chattybox';

try {
await chattybox.sendMessage({ message: 'Where is the API reference?' });
} catch (error) {
if (error instanceof ChattyboxError) {
console.error(error.status, error.code, error.message);
}
}

ChattyboxError.status sisältää HTTP-tilan. code on mukana, kun API palauttaa rakenteisen virhekoodin.

Edistynyt widget-yhteensopivuus

SDK tarjoaa myös metodit getWidgetConfig() ja getWidgetTranslations(locale). Ne tukevat asiakasohjelmia, jotka haluavat toisintaa hostatun widgetin projektiasetukset ja lokalisoidut tekstit. Täysin mukautettu käyttöliittymä voi jättää ne huomiotta.

Seuraavat vaiheet