Aangepaste botacties ontwikkelen in Botpress

Aangepaste Botacties Ontwikkelen In Botpress



Chatbots zijn een fundamenteel onderdeel geworden van moderne bedrijven, waardoor ze betere klantenondersteuning kunnen bieden, processen kunnen automatiseren en effectiever met gebruikers kunnen communiceren. Botpress is een populair open-source chatbotframework dat verschillende ingebouwde acties biedt. In sommige gevallen moet u echter mogelijk aangepaste botacties maken om aan specifieke vereisten te voldoen en de mogelijkheden van de bot uit te breiden. In deze zelfstudie begeleiden we u bij het maken van aangepaste botacties in Botpress door ons te concentreren op het aanroepen van een API en het gebruiken van de respons in een inhoudselement.

Acties in Botpress begrijpen

Acties in Botpress zijn functies aan de serverzijde die door de bot worden uitgevoerd tijdens gespreksstromen. Ze hebben de macht om de status van het gesprek te veranderen, aangepaste berichten te verzenden, willekeurige code uit te voeren (zoals het aanroepen van de API's of het opslaan van de gegevens) en meer. In wezen zijn acties reguliere JavaScript-functies, wat betekent dat ze vrijwel alles kunnen uitvoeren binnen de beperkingen van het platform.

Wanneer een actie wordt aangeroepen door de Dialogue Manager (DM), ontvangt deze verschillende argumenten die context aan de functie bieden. Deze argumenten omvatten de gebruikerskenmerken, sessievariabelen, tijdelijke variabelen, variabelen op botniveau, de laatste gebruikersgebeurtenis in het gesprek, doorgegeven argumenten van de Visual Flow Builder en een in een sandbox geplaatste VM die enkele omgevingsvariabelen bevat.







Nieuwe acties registreren

Om de aangepaste botacties toe te voegen, moet u een JavaScript-bestand (.js) maken en dit in het .js-bestand plaatsen gegevens/globaal/acties map binnen uw Botpress-project. Helaas is er geen manier om programmatisch nieuwe acties toe te voegen tijdens runtime. Met behulp van de JavaDoc-opmerkingen in uw code kunt u zinvolle informatie geven over de acties, zoals hun naam, beschrijving, argumenten en standaardwaarden. U kunt een actie ook verbergen in de stroomeditor door de vlag @hidden true toe te voegen aan de JavaDoc-opmerking.



Aangepaste acties maken in Botpress

Hier zijn een paar stappen die u kunt volgen om een ​​aangepaste actie in Botpress te maken:



Stap 1: Maak uw bot en voeg een knooppunt toe

Maak om te beginnen een nieuwe bot in Botpress. Zodra uw bot is gemaakt, voegt u een nieuw knooppunt toe aan de gespreksstroom.





Stap 2: Voeg de juiste berichten toe aan uw knooppunt

Voeg in het nieuw gemaakte knooppunt de nodige berichten toe om de uitwisseling van inhoud met gebruikers te vergemakkelijken. U kunt bijvoorbeeld een sms-bericht toevoegen om de gebruiker te begroeten en om zijn of haar naam te vragen.



Stap 3: Open de code uitvoeren vanuit de zijbalk

Navigeer naar de zijbalk in de Botpress Flow Builder en open de “Code-editor”. Hier kunt u uw aangepaste acties samenstellen en beheren.

  C:\Gebruikers\gebruiker01\Bureaublad\4124.PNG

Stap 4: Klik op de knop 'Actie toevoegen'.

Klik in het gedeelte ‘Code uitvoeren’ op de knop ‘Actie toevoegen’. Deze actie opent het venster 'Een nieuwe action_legacy maken'.

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

Stap 5: Geef een naam op voor het bestand en klik op de knop Verzenden

Geef in het venster “Een nieuwe action_legacy maken” een betekenisvolle naam op voor uw aangepaste actiebestand; bijvoorbeeld customAction.js. Nadat u de naam heeft opgegeven, klikt u op de knop 'Verzenden'. Hierdoor wordt het bestand “customAction.js” gemaakt.

Stap 6: Schrijf uw aangepaste code

Open het nieuw gemaakte bestand “customAction.js”. In het bestand ziet u de standaardcode die is gegenereerd voor een nieuwe actie. Geef een betekenisvolle beschrijving voor uw aangepaste actie met behulp van de juiste opmerkingen.

Schrijf nu uw aangepaste code binnen de functie. Deze code definieert het gedrag van uw aangepaste actie. U kunt JavaScript gebruiken om verschillende taken uit te voeren, zoals het uitvoeren van API-aanroepen, toegang tot de databases of het verwerken van complexe logica.

Stap 7: Pas uw knooppunt aan om de aangepaste actie te gebruiken

Ga terug naar de Botpress Flow Builder en wijzig het knooppunt waarop u uw aangepaste actie wilt activeren. Voeg een kaart 'Code uitvoeren' toe aan het knooppunt.

Stap 8: Selecteer uw aangepaste actienaam en geef de actieparameters op

Op de kaart ‘Code uitvoeren’ ziet u een vervolgkeuzelijst met de namen van al uw aangepaste acties. Selecteer de naam van uw aangepaste actie in de lijst. Als voor uw aangepaste actie parameters nodig zijn, kunt u deze opgeven in het gedeelte 'Parameters' van de kaart 'Code uitvoeren'.

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

Stap 9: Laat uw bot de actie uitvoeren

Voeg ten slotte nog een kaart toe aan het knooppunt om uw bot de aangepaste actie te laten uitvoeren. U kunt de variabelen gebruiken die in de gebeurtenis zijn opgeslagen (opgegeven op de kaart ‘Code uitvoeren’) om toegang te krijgen tot de resultaten van uw aangepaste actie en deze op te nemen in het antwoord van de bot.

Voorbeeld aangepaste actie

Stel dat u wilt dat uw chatbot de huidige weersinformatie voor een bepaalde locatie levert. U kunt een aangepaste actie maken die een weer-API aanroept en de weergegevens retourneert.

const axios = vereisen ( 'axios' );

const getWeather = async ( gebruiker , sessie, argumenten) => {

const locatie = args.locatie || 'New York' ;

const apiKey = 'uw_weer_api_sleutel' ;

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

poging {

const antwoord = wacht op axios.get(apiUrl);

const weerData = respons.data;

return `Het huidige weer in ${location} is ${weatherData.current.condition.text} met een temperatuur van ${weatherData.current.temp_c}°C.`;

} catch (fout) {

opbrengst 'Sorry, dat kon ik \' De weersinformatie wordt momenteel niet opgehaald. Probeer het later opnieuw.' ;

}

};

return getWeather( gebruiker , sessie, argumenten);

Voor deze actie zijn bepaalde argumenten nodig, waaronder de gebruiker, de sessie en argumenten die de context en gegevens bieden waarmee de actie kan werken. In dit voorbeeld neemt de aangepaste actie 'getWeather' de locatie als argument of wordt standaard 'New York' gebruikt als deze niet wordt opgegeven. De actie roept de Weer-API aan met behulp van Axios, haalt de weergegevens op en retourneert een bericht met de weersomstandigheden en temperatuur.

Voordelen van aangepaste acties

Aangepaste acties in Botpress bieden verschillende voordelen die de mogelijkheden en functionaliteit van uw chatbot vergroten:

  1. Ze breiden de chatbotfunctionaliteit uit tot buiten de ingebouwde mogelijkheden.
  2. Ze creëren interacties op maat voor een betere gebruikerservaring.
  3. Ze halen realtime gegevens op van API's voor dynamische reacties.
  4. Ze integreren met backend-systemen en databases.
  5. Ze verwerken ingewikkelde scenario's met aangepaste code.
  6. Ze hergebruiken de acties in chatbots en stromen.
  7. Ze implementeren de aangepaste foutafhandeling en logboekregistratie.
  8. Ze optimaliseren de resource-intensieve taken.
  9. Ze maken gebruik van de externe services voor schaalvergroting.
  10. Ze hebben toegang tot en delen de vooraf gemaakte aangepaste acties.

Conclusie

Aangepaste acties in Botpress breiden de chatbotmogelijkheden uit, personaliseren interacties en integreren externe API's. Ontwikkelaars maken de JavaScript-functies aan de serverzijde en roepen deze aan vanuit de Botpress Flow Builder. Deze acties bieden herbruikbaarheid van code, verbeterde prestaties en schaalbaarheid, waardoor chatbots veelzijdiger en krachtigere tools worden. Door gebruik te maken van de aangepaste acties in Botpress ontstaan ​​innovatieve en boeiende chatbot-ervaringen.