Category: Chat

  • natural language sdk

    I have been writing a natural language SDK. I am looking for people that wanted to try using it so I can get design feedback. You can try a demo here https://thinktelligence.com/demo try this input

    create a tank move it to building1

    There are more examples at the bottom of the page.

    Thanks

    Johnny

    submitted by /u/johnny_gooden
    [link] [comments]

  • CX/Contact Center Tips

    CX/Contact Center Tips

    Improving automation is one of the can’t- miss call center efficiency tips. Bots are ideal for guiding customers to serve themselves. They answer frequently asked questions, so your agents get more time to work on the complex issues. And no customer gets neglected or left waiting in the process.

    https://preview.redd.it/fmvycmeaaof61.png?width=1024&format=png&auto=webp&s=2c85e2268d73d8a0b1ceb8ccba1eaf59a577ab62

    submitted by /u/vesuvitas
    [link] [comments]

  • Conversational Calculator How to use Math in your Chatbot

    Why use math in a chatbot

    If you really want to go beyond simple chatbot functionalities like understanding simple questions, you might want to use math in your chatbot.

    When your AI bot understands math, various new possibilities arise, depending on your use case. Let me give you some examples:

    For chatbots in the hotels & hospitality industry, you could have a standard rate per night. Then you could ask the user how many nights they would like to stay and multiply that with the rate per night to inform them about the total costs.

    Restaurant chatbots could use math for determining the group size of a booking. If somebody says something like “I’d like to book 2 tables for 4 persons each”, the bot can understand that it will be about 8 persons in total.

    You could even use math for personal trainer fitness bots:

    Different types of math

    In this article, we will teach you how to implement 4 types of math in your chatbot:

    Different Types of Math Questions

    The first step is to create an intent that detects when somebody wants the chatbot to calculate something. Someone could ask a generic question, like “Do you understand math?” or “Can you calculate something for me?”.

    If that’s the case, you could simply let the bot ask for what it should calculate.

    Sometimes the user already gives some more specific information about the math question, like “What is 8 divided by 4?” or “8/4=?”.

    In that case, you can make your calculator chatbot already save that information, so it won’t have to ask again. This is better for the user experience since it reduces the amount of needed effort from the user.

    Trending Bot Articles:

    1. Case Study: Building Appointment Booking Chatbot

    2. IBM Watson Assistant provides better intent classification than other commercial products according to published study

    3. Testing Conversational AI

    4. How intelligent and automated conversational systems are driving B2C revenue and growth.

    Creating a Math Intent

    Now we discussed some ways people can let the bot know they want it to solve their math problem; it’s time to create an intent for it:

    You can see the intent is using 3 entities:

    • number_first
    • number_second
    • math

    The first and second numbers in the intent are separately captured because for dividing and subtracting, you’d need to know which number should be divided/subtracted from the other number. Both number-entities use the default system entity for numbers.

    The Math Entity

    The third entity (math) is a custom entity. It contains the 4 types of math we already discussed briefly, along with some synonyms for them:

    Requiring all Entities

    Now we have the entity and the intent in place, it’s about time to look at the actual flow.

    All 3 entities will need to have a value to enable the bot to solve the math question, so the first step is to set all of them to be required:

    This will add sections underneath the intent for when one of the entities isn’t known after matching the intent. Click on all of them and add a Text Reply that instructs to give it a value.

    Mathematical Conditions

    Since we have 4 types of math, we need to add 4 conditions that check which type the chatbot should use.

    The image below shows how to check with a condition if the math type is “Minus”. Do the same for “Multiply”, “Divide,” and “Plus” in the other conditions.

    Also, add a 5th Else condition without any rules, so we can give an error message when the bot wasn’t able to match any other condition due to some unforeseen problem we missed.

    String Templates

    Now it’s finally time to actually implement the math itself. This is easier than you might think! We will simply use String Templates.

    To calculate the value of the entity number_first minus the value of number_second, use the following String Template:

    {{number_first.first.match | minus: number_second.first.match}}

    If you change “minus” to the other math types, you get the following flow:

    Resetting parameters

    When we now test our flow twice, you can see the second time it doesn’t work correctly yet. The parameter number_first still contains the value from our first test.

    That’s because we haven’t reset the parameters before giving them new values. Simply solve this by resetting the values after each response, as shown in the image below.

    As you can see, the problem has now been solved!

    And that’s how you teach math to your chatbot!

    Learn More

    There are way more possibilities with String Templates, so have a look at our documentation if you want to learn more.

    You can also join our free Slack Support Channel. It’s a great place for getting inspired and asking questions about your chatbot project!

    Don’t forget to give us your 👏 !


    Conversational Calculator How to use Math in your Chatbot was originally published in Chatbots Life on Medium, where people are continuing the conversation by highlighting and responding to this story.

  • How to Automate Testing of Your WhatsApp Chatbot

    Botium delivers again — in this case, automated end-2-end testing of WhatsApp chatbots on real or virtual devices. For the first time it is now possible to have a full enterprise-level test strategy for WhatsApp chatbots.

    Automated vs Manual Testing

    When it comes to testing WhatsApp chatbots up to now there have been mainly two approaches:

    • Testing manually on a smartphone
    • Testing backend functionality with API Testing

    Both approaches are valid and no enterprise-level test strategy should miss any of them. But there are two obvious flaws:

    1. Manual testing is not scalable to the extent that is required to guarantee constant high quality for production-level chatbots
    2. Backend testing does not consider the end user experience

    Botium fills this gap with a new connector for testing WhatsApp chatbots on real and virtual smartphone devices.

    Building Test Infrastructure

    Here is what you need:

    • Some smartphones with SIM cards and USB cables
    • Or Docker + Docker-Compose to launch virtual devices

    Setting Up Real Devices

    1. Go and purchase some smartphones (or use your own one) with SIM cards
    2. Install and register WhatsApp on them
    3. Enable Android developer mode — ask Google how to do it for your device model
    4. Attach it to your workstation with the USB data cable
    5. Install Android SDK
    6. Install and launch Appium

    Setting Up Virtual Devices

    1. Install Docker and Docker-Compose
    2. Launch a virtual device with the help of this project

    In short, you can create a file docker-compose.yml and launch it with docker-compose up -d to get a single virtual machine with a single virtual Samsung device up and running. You can see it in action by browsing to http://localhost:6080

    Trending Bot Articles:

    1. Case Study: Building Appointment Booking Chatbot

    2. IBM Watson Assistant provides better intent classification than other commercial products according to published study

    3. Testing Conversational AI

    4. How intelligent and automated conversational systems are driving B2C revenue and growth.

    version: "3"
    services:
    samsung_galaxy_S8:
    image: budtmo/docker-android-x86-11.0
    privileged: true
    ports:
    - "6080:6080"
    - "4723:4723"
    environment:
    - DEVICE=Samsung Galaxy S8
    - APPIUM=true
    - MOBILE_WEB_TEST=false
    - AUTO_RECORD=false
    Samsung Device Emulator

    Get a Twilio account or any other SMS provider, install WhatsApp on the virtual device and register it by SMS.

    In one of the next Botium releases, the registration step will be automized by Botium Box as well.

    Now that your devices are up and running and WhatsApp is available, lets see what else to prepare.

    Connect Botium to WhatsApp

    You need an installation of Botium Box for this purpose. Experienced DevOps engineers can give Botium Core a try, the free and open source automation library powering Botium Box and other Botium products.

    Get your copy of Botium Box here

    Connect Device Lab To Botium

    In the Botium Box settings, register a new device provider.

    Tell Botium about the Device

    While for most device cloud providers the available devices can be listed automatically (by calling the device cloud listing APIs), this is not possible for your local Appium installation. Edit the file LOCALSELENIUM.json in the resources folder of Botium Box to tell Botium about the available devices:

    [
    {
    "name": "Samsung Galaxy S8 Emulator",
    "value": {
    "type": "MOBILEAPP",
    "capabilities": {
    "appium:platformName": "Android"
    }
    }
    }
    ]

    Compose a Device Set

    Botium Box groups the devices you want to run your tests on in device sets. Create a new device set for your Appium endpoint and select the Samsung Galaxy S8 Emulator (and maybe other devices as well if you connected them).

    Configure Botium Connector for Appium

    Register a new chatbot in Botium Box

    • As Connector/Chatbot Technology use WebdriverIO (Selenium or Appium)
    • As Automation Technology select Use Appium
    • As Webdriver Script choose Whatsapp

    As an experienced Appium developer you might ask Where do I enter the Selenium CSS Selectors ? — with Botium you don’t have to do this as this is part of the Webdriver Script Whatsapp.

    On the last step of the Quickstart Wizard, make sure to select your device set at the very bottom to start your tests.

    Write Test Cases

    You can now use the full power for BotiumScript to write your test cases. An easy one could look like this:

    hi
    #me
    hi
    #bot
    Welcome to the World Health Organization

    Watch Botium Automating Whatsapp

    When running a test case, Botium will now

    • open the WhatsApp app
    • select the contact representing the chatbot
    • cleanup the message history
    • send test case input from WhatsApp
    • receive WhatsApp output and compare with the test case
    • repeat the last two steps until the test case is ready

    Wrap-Up

    With Botium Box and Appium it is now possible to run automated end-2-end tests of conversational flow of your WhatsApp chatbot.

    Don’t forget to give us your 👏 !


    How to Automate Testing of Your WhatsApp Chatbot was originally published in Chatbots Life on Medium, where people are continuing the conversation by highlighting and responding to this story.

  • How Amazon’s voice technologies can assist your company with Alexa for Business

    Amazon Echo device

    For the last decades, the way people interact and communicate with each other keeps changing nearly every day. We have reached the point where customers are oriented towards Amazon Alexa devices and their companions to acquire the services they need.

    The same thing is happening with companies who offer services to their customers directly.

    The way they communicate with their customers and offer their services has changed drastically over two decades.

    From giant printed banners to Radio publicity, it would later change to TV commercials. Then the Smartphones’ era came to be, all along with phone payments, commercial websites, online payments.

    Nowadays, it is common for a business to advertise on social media, and the channels are growing.

    Now the era of voice technologies has come, and new tools for reaching customers are Amazon Alexa devices and Alexa for Business.

    There are two ways you can use Amazon Alexa services in your business:

    1. Amazon Alexa for business to improve your business’s internal processes.
    2. Amazon Alexa for business to improve your income.

    Why is using Alexa for Business so important?

    Alexa for Business, as the name states, is a tool made for businesses to use and work with Alexa in the workplace.

    It is a set of management tools, APIs to mix with existing IT infrastructure and the Amazon Echo devices. Amazon offers these services using Web Services, dedicated to corporate customers.

    Trending Bot Articles:

    1. Case Study: Building Appointment Booking Chatbot

    2. IBM Watson Assistant provides better intent classification than other commercial products according to published study

    3. Testing Conversational AI

    4. How intelligent and automated conversational systems are driving B2C revenue and growth.

    Maintaining an entire ecosystem of Echo devices is difficult when using them for a home, while for enterprise customers is way more complicated.

    For example, there is a specific setup needed for devices or rooms with a typical configuration. The easy part, however, is that it is required only once.

    Suppose you intend to use such devices within your Company. In that case, it can help you set up meetings, reminders, calls you need to make, and complete simple actions like reordering supply for your office, sending materials for printing. And all of these are just some of the simple tasks Alexa for Business can perform. All that is needed is to place Amazon Alexa devices in crucial locations in your offices. Premises where the employees are most likely to need and use them.

    Alexa for Business can help your business run more productively, effortlessly, and efficiently.

    How to use Amazon Alexa for Business to develop your Company

    While Alexa for Business can improve your company’s work internally, using Amazon Alexa for business means using it to improve the service or product you offer to your customers as well.

    Here are some examples of companies that have used Amazon Alexa to grow their connection with their audience and clients:

    1. ICICI Bank, one of India’s largest private banks, has launched voice applications with the two leading platforms of the moment: Amazon Alexa and Google Assistant. The purpose of voice applications is to allow its customers to enjoy a range of banking services with a simple voice command.
    2. West Virginia State Office created their own Alexa Skill to bring institutions closer to their citizens. Everyone in this state that owns Amazon Alexa devices can use it. West Virginia government created this voice application to answer a wide range of questions about its services.
    3. With their Nutella Creations Alexa Skill, Nutella includes guides and recipes for using Nutella in a variety of breakfast menus.
    4. Toyota’s Skill for Amazon Alexa allows a new way to interact with your car. Activate the skill, connect it to your Toyota account, and start the fun. Put or remove the safety at the doors and ask for the fuel level. And much more, accessible from your Amazon Alexa devices or the Alexa app on your smartphone.

    We can add other businesses, but these examples show us how limitless Amazon Alexa is for Business development and how crucial for profit.

    The companies mentioned above come from different industries and with no relation to each other.

    These companies did not wait for some of their competitors to first succeed with an Alexa Skill. They saw this new technology’s potential, used Amazon Alexa for Business purposes, and got closer to their customers.

    Each skill has different features, but all with the same goal: to lure customers and potential customers closer to them. Making it easier to approach and know your Business, buy from your Business, and dialogue with your Business. This way, your brand will be accessible to every possible customer on their Amazon Alexa devices.

    If you want to build your first Alexa Skill but don’t know how to do it and where to start, the solution is simple: Ipervox.

    Ipervox is an online platform that allows you to build Alexa Skills in some simple steps, test and publish it. Ipervox will enable you to grow your business and your connection with your audience.

    Just press the “Get Started” button and start building your Alexa Skill.

    Don’t forget to give us your 👏 !


    How Amazon’s voice technologies can assist your company with Alexa for Business was originally published in Chatbots Life on Medium, where people are continuing the conversation by highlighting and responding to this story.

  • Wie Chatbots die Lieferantenkommunikation vereinfachen

    Einkäufer erhalten von ihren Lieferanten oft Anfragen zu Bestellungen und Rechnungen. Laut einer Studie verbringen Mitarbeiter bis zu 30 % ihrer Arbeitszeit mit der Bearbeitung dieser Lieferantenanfragen (Esker).

    Viele dieser Anfragen sind jedoch Standardfragen, die leicht automatisiert werden können. So könnten Unternehmen ihre Mitarbeiter entlasten und ihnen mehr Zeit für die Bearbeitung von komplexeren Aufgaben geben.

    Wie können Unternehmen den Aufwand bei der Lieferantenkommunikation reduzieren?

    Chatbots sind die ideale Lösung um die Bearbeitung von Standardanfragen zu automatisieren. Sie antworten nicht nur rund um die Uhr in Echtzeit, sondern können auch systemübergreifend auf Daten und Informationen zugreifen. Diese werden dann im Chat den Nutzern zur Verfügung gestellt.  Dabei kann das Unternehmen natürlich selbst entscheiden, auf welche Informationen der Chatbot zugreift und welche er weitergibt.

    Wenn Unternehmen ihren Lieferanten nun einen Chatbot als zentralen Ansprechpartner zur Verfügung stellen, können sie die Anzahl der Anfragen, die die Mitarbeiter bearbeiten müssen, stark reduzieren. Gleichzeitig können sie ihren Lieferanten Informationen schneller zur Verfügung stellen. So können Einkaufsprozesse schlanker und effizienter gestaltet werden.

    Welche Aufgaben in der Lieferantenkommunikation können Chatbots übernehmen?

     


    Einholen von Informationen und Angeboten

    Einkäufer können einen Chatbot nutzen, um Informationen und Angebote von Lieferanten einzuholen. Hierfür bekommen Lieferanten eine Angebotsanfrage mit einem Link. Über den Link erhalten sie  Zugang zu dem Chatbot.  Der Chatbot fragt dann im Gespräch die notwendigen Informationen ab und hinterlegt diese im System.

    Der Vorteil dieses Vorgehens ist, dass die notwendigen Informationen den Mitarbeitern direkt in digitalisierter Form in der Firmendatenbank vorliegen. Es ist nicht mehr nötig eine E – Mail zu öffnen, die angehängte Pdf herunterzuladen und die Daten manuell im System einzutragen. 

    Chatbots können auch eingesetzt werden um Angebote und Preise zu verhandeln. Wie das genau funktioniert, kannst du in unserem White Paper “How to use Chatbots in Procurement” nachlesen.

    Beantworten von Fragen zu Bestellungen


    Wenn Lieferanten zu den Bestellungen Fragen haben, können sie diese auch an den Chatbot richten. Sollte der Chatbot eine Frage nicht beantworten können, kann der Nutzer über ein Human Handover an einen Mitarbeiter weitergeleitet werden.

    Annahme und Abwicklung von Rechnungen

    Die manuelle Rechnungsverarbeitung kostet viel Zeit. Mit einem Chatbot können Rechnungen angenommen und dann mit Hilfe von Optical Character Recognition – Technologie und Robotic Processing Automation – Prozessen automatisiert in das System eingepflegt und abgewickelt werden.

    Beantworten Fragen zu Bestell – und Rechnungsstatus

    Für Lieferanten ist es natürlich wichtig zu wissen, wann sie die Bezahlung für ihre Lieferung erhalten. Um die Mitarbeiter des Einkaufs von häufigen Rückfragen zu entlasten, kann ein Chatbot eingesetzt werden, der den Lieferanten Auskunft über den Bestell- und Rechnungsstatus erteilt.

    Welche Vorteile bietet der Einsatz von  Chatbots?

    Der Einsatz von Chatbots reduziert die Anzahl der Anfragen, die die Mitarbeiter des Einkaufs persönlich abarbeiten müssen und gibt ihnen dadurch die Möglichkeit sich auf komplexere Aufgaben zu konzentrieren. Sie haben dadurch auch mehr Zeit Angelegenheiten, bei denen mehr Fingerspitzengefühl und Soft Skills gefragt sind, im persönlichen Gespräch mit den Lieferanten anzusprechen.

    Ein weiterer Vorteil ist, dass manuelle Übertragungsfehler wegfallen. Rückmeldungen aus der Interaktion des Chatbots mit den Lieferanten können direkt wieder ins System zurück gespeist werden. Hierdurch können die Mitarbeiter jederzeit auf aktualisierte Informationen zugreifen.

    Wenn du mehr darüber  wissen möchtest, wie Chatbot im Einkauf eingesetzt werden können, dann hol dir unser White Paper “How to use Chatbots in Procurement”

    Der Beitrag Wie Chatbots die Lieferantenkommunikation vereinfachen erschien zuerst auf BOTfriends.

  • Simplify Some Annoying Tasks Through A Chat Bot

    Tip: Make yourself a handy Discord (or Slack) ChatBot to do a bunch of tedious tasks for you.

    So why make your own chatbot?

    With your own chatbot, there are so many different things you can do to streamline your workflow. You can build it out however you want with the features personalized for your needs. You can also give the bot a personality so it feels you have a mini butler on hand (“Yo Alfred, warm up the batmobile!”).

    A few things I noticed myself doing lately were

    • looking up box scores of NBA games and player stats
    • looking up UFC/MMA fight schedules and the betting odds
    • stalking gym equipment to go on sale
    • mashing F5 on a shopping site to see if the item is in stock

    A common inconvenience that these tasks share: they all visit slow-loading, bloated websites. This is less of an issue on modern spec computers, but JavaScript heavy sites tend to eat up aging processors.

    A solution that came to mind was: toss all of these tasks inside a chatbot and kill many birds with one stone.

    My chat client of choice for this bot would be Discord since it’s what I use the most. If you’re not a Discord user, there are other popular chat clients that supports chat bots as well like Slack or Skype. A Discord tip I recommend is to create your own personal server so you can interact with the bot however you like without disturbing others.

    The Discord client

    Building a bot on Discord right now is very straight forward with Commando — a flexible, fully object-oreinted command framework for Discordjs. Another framework to keep an eye out for in the future is Wokcommands — a fully featured Discordjs framework with built in Mongodb support, built by Worn Off Keys. For this Demo, I’ll be using Commando.

    Let’s build a simple bot that gets current stats for a NBA player.

    • Follow the steps in the Discord Developers docs to create a bot and retrieve the bot token.
    • Create an empty directory.
    • Create an index.js file, config.json (or dotenv) file , and a commands folder.
    • Pop open your terminal and run npm init -y to create the package.json with default settings.
    • The bot’s folder should look like this:

    Trending Bot Articles:

    1. Case Study: Building Appointment Booking Chatbot

    2. IBM Watson Assistant provides better intent classification than other commercial products according to published study

    3. Testing Conversational AI

    4. How intelligent and automated conversational systems are driving B2C revenue and growth.

    • npm i discord.js discord.js-commando to install the packages.
    • In the config.json file
    • In the index.js file
    • Now with the Commando framework and Discordjs wired up, we can start adding command files inside the commands folder.
    • Our NBA stat fetcher command will go inside commands/sports/nbastats.js. All sports related commands will reside there as well.
    • updated directory tree
    Ignore the shop directory. Will add commands that track item stock/prices in the future.
    • inside nbastats.js
    The Commando framework has a built in handler for commands as long as they’re in the correct directory and the file name matches. We have to make our class extend it and follow object orientated programming conventions.
    • The API used for this command was the balldontlie API from balldontlie.io
    • In the run class method, we put the code that we want to execute whenever the bot detects that command. This method takes in 4 arguments (message, args, fromPattern, and result). For the nbastat grabber command, we will only need message and args.
    • When the command is executed, it passes the argument(s) (the player’s name) into the endpoint and fetches the data for the player. That object is then passed into another method to fetch a second layer of data (pts, assists, rebounds, shooting %, etc) for the player. Finally, that player’s data gets passed into a method that builds the embedded message.

    Once you add the bot to your personal server and activate it (I recommend using nodemon to run the bot while in development), it begins watching each message. If the message starts with the prefix followed by the command name, the code in the run() method gets executed.

    Here is the command in action. Typing out these few words were much faster than visiting a website.

    I CAN’T BELIEVE THIS MAN IS AVERAGING ALMOST 10 ASSIST PER GAME AS A CENTER!

    Final Thoughts

    The convenience of having my own chat bot do tedious tasks for me is a game changer. Some of my favorite features include:

    • fetching box scores and statistics of NBA games/players
    • pinging me when an item is in stock
    • pinging me 15 mins before a specific event starts
    • check prices for things like stocks/crypto

    This isn’t even the tip of the iceberg, as long as you can find an API or scrape the site, you can find ways to benefit using a personal chat bot. You can even take it to the next level and connect the bot to a database to share data across other clients (websites, mobile apps, etc).

    There are a few different ways to host the bot for free. Heroku has a free tier that offers a generous amount of run time (more if you have a linked credit card). AWS and Digital Ocean are also popular hosting options if you can rack up some free credits.

    Don’t forget to give us your 👏 !


    Simplify Some Annoying Tasks Through A Chat Bot was originally published in Chatbots Life on Medium, where people are continuing the conversation by highlighting and responding to this story.