Utvikle tilpassede bothandlinger i Botpress

Utvikle Tilpassede Bothandlinger I Botpress



Chatbots har blitt en grunnleggende del av moderne virksomheter som gjør dem i stand til å gi bedre kundestøtte, automatisere prosesser og kommunisere mer effektivt med brukere. Botpress er et populært open source chatbot-rammeverk som tilbyr ulike innebygde handlinger. I noen tilfeller kan det imidlertid hende du må lage egendefinerte bothandlinger for å møte spesifikke krav og utvide botens muligheter. I denne opplæringen vil vi veilede deg gjennom å lage tilpassede bot-handlinger i Botpress ved å fokusere på å kalle et API og bruke svaret i et innholdselement.

Forstå handlinger i Botpress

Handlinger i Botpress er funksjoner på serversiden som utføres av boten under samtaleflyter. De har makten til å endre samtalens tilstand, sende tilpassede meldinger, kjøre vilkårlig kode (som å ringe API-ene eller lagre dataene) og mer. I hovedsak er handlinger vanlige JavaScript-funksjoner som betyr at de kan utføre nesten hva som helst innenfor plattformens begrensninger.

Når en handling påkalles av Dialogue Manager (DM), mottar den flere argumenter som gir kontekst til funksjonen. Disse argumentene inkluderer brukerattributtene, sesjonsvariablene, midlertidige variabler, robotnivåvariabler, den siste brukerhendelsen i samtalen, beståtte argumenter fra Visual Flow Builder og en sandboxed vm som inneholder noen miljøvariabler.







Registrering av nye handlinger

For å legge til de egendefinerte bothandlingene, må du opprette en JavaScript-fil (.js) og plassere den i data/global/handlinger mappe i ditt Botpress-prosjekt. Dessverre er det ingen måte å programmere legge til nye handlinger under kjøring. Ved å bruke JavaDoc-kommentarene i koden din kan du gi meningsfull informasjon om handlingene, for eksempel navn, beskrivelse, argumenter og standardverdier. Du kan også skjule en handling i flytredigeringsprogrammet ved å legge til @hidden true-flagget i JavaDoc-kommentaren.



Hvordan lage tilpassede handlinger i Botpress

Her er noen få trinn du kan følge for å lage en tilpasset handling i Botpress:



Trinn 1: Lag din bot og legg til en node

For å komme i gang, lag en ny bot i Botpress. Når boten din er opprettet, legger du til en ny node i samtaleflyten.





Trinn 2: Legg til passende meldinger til noden din

I den nyopprettede noden legger du til de nødvendige meldingene for å lette innholdsutvekslingen med brukerne. Du kan for eksempel legge til en tekstmelding for å hilse på brukeren og be om navnet.



Trinn 3: Åpne utfør koden fra sidefeltet

Naviger til sidefeltet i Botpress Flow Builder og åpne 'Koderedigering'. Det er her du kan konstruere og administrere dine egendefinerte handlinger.

  C:\Users\user01\Desktop\4124.PNG

Trinn 4: Klikk på 'Legg til handling'-knappen

I delen 'Utfør kode' klikker du på knappen 'Legg til handling'. Denne handlingen åpner vinduet 'Create a new action_legacy'.

  C:\Users\user01\Desktop\tempsnip.png

Trinn 5: Angi et navn for filen og klikk på Send-knappen

I «Create a new action_legacy»-vinduet gir du et meningsfullt navn for den egendefinerte handlingsfilen; for eksempel customAction.js. Når du har spesifisert navnet, klikker du på 'Send'-knappen. Dette oppretter filen 'customAction.js'.

Trinn 6: Skriv din egendefinerte kode

Åpne den nyopprettede 'customAction.js'-filen. Inne i filen vil du se boilerplate-koden som er generert for en ny handling. Gi en meningsfull beskrivelse av den tilpassede handlingen din ved å bruke de riktige kommentarene.

Skriv nå din egendefinerte kode i funksjonen. Denne koden definerer oppførselen til din egendefinerte handling. Du kan bruke JavaScript til å utføre ulike oppgaver som å foreta API-anrop, få tilgang til databasene eller håndtere kompleks logikk.

Trinn 7: Endre noden din for å bruke den tilpassede handlingen

Gå tilbake til Botpress Flow Builder og endre noden der du vil utløse din egendefinerte handling. Legg til et 'Utfør kode'-kort til noden.

Trinn 8: Velg ditt egendefinerte handlingsnavn og spesifiser handlingsparametrene

På 'Utfør kode'-kortet vil du se en rullegardinliste som inneholder navnene på alle dine egendefinerte handlinger. Velg navnet på den egendefinerte handlingen fra listen. Hvis din egendefinerte handling krever noen parametere, kan du spesifisere dem i 'Parameters'-delen av 'Execute Code'-kortet.

  C:\Users\user01\Desktop\tempsnip121.png

Trinn 9: Få boten din til å utføre handlingen

Til slutt, legg til et nytt kort til noden for å få boten din til å utføre den tilpassede handlingen. Du kan bruke variablene som er lagret i hendelsen (spesifisert i «Utfør kode»-kortet) for å få tilgang til resultatene av din egendefinerte handling og inkludere dem i botens svar.

Eksempel på egendefinert handling

La oss si at du vil at chatboten din skal gi gjeldende værinformasjon for et spesifisert sted. Du kan opprette en egendefinert handling som kaller opp en vær-API og returnerer værdataene.

const axios = krever ( 'aksios' );

const getWeather = asynkron ( bruker , økt, args) => {

const plassering = args.location || 'New York' ;

const apiKey = 'your_weather_api_key' ;

const apiUrl = `https://api.weatherapi.com/v1/current.json?key=${apiKey}&q=${location}`;

prøv {

const respons = avvent axios.get(apiUrl);

const værData = respons.data;

return `Gjeldende vær i ${location} er ${weatherData.current.condition.text} med en temperatur på ${weatherData.current.temp_c}°C.`;

} catch (feil) {

komme tilbake «Beklager, jeg kunne \' ikke hente værinformasjonen for øyeblikket. Prøv igjen senere.' ;

}

};

returner getWeather( bruker , økt, args);

Denne handlingen tar visse argumenter, inkludert brukeren, økten og argumentene som gir konteksten og dataene for handlingen å jobbe med. I dette eksemplet tar den tilpassede handlingen 'getWeather' plasseringen som et argument eller er standard til 'New York' hvis den ikke er oppgitt. Handlingen kaller opp Weather API ved hjelp av Axios, henter værdataene og returnerer en melding som inneholder værforhold og temperatur.

Fordeler med tilpassede handlinger

Tilpassede handlinger i Botpress tilbyr flere fordeler som forbedrer mulighetene og funksjonaliteten til chatboten din:

  1. De utvider chatbot-funksjonaliteten utover de innebygde mulighetene.
  2. De skaper skreddersydde interaksjoner for en bedre brukeropplevelse.
  3. De henter sanntidsdata fra API-er for dynamiske svar.
  4. De integreres med backend-systemer og databaser.
  5. De håndterer intrikate scenarier med tilpasset kode.
  6. De gjenbruker handlingene på tvers av chatbots og flyter.
  7. De implementerer tilpasset feilhåndtering og logging.
  8. De optimaliserer de ressurskrevende oppgavene.
  9. De utnytter de eksterne tjenestene for skalering.
  10. De får tilgang til og deler de forhåndsbygde egendefinerte handlingene.

Konklusjon

Egendefinerte handlinger i Botpress utvider chatbot-mulighetene, tilpasser interaksjoner og integrerer eksterne APIer. Utviklere lager JavaScript-funksjonene på serversiden og påkaller dem fra Botpress Flow Builder. Disse handlingene tilbyr kodegjenbrukbarhet, forbedret ytelse og skalerbarhet som gjør chatbots mer allsidige og kraftige verktøy. Å utnytte de tilpassede handlingene i Botpress skaper innovative og engasjerende chatbot-opplevelser.