Integrations – Xenioo Wed, 11 Jan 2023 16:06:21 +0000 en-US hourly 1 https://wordpress.org/?v=5.6.12 /wp-content/uploads/2022/02/cropped-badge_611x611-32x32.png Integrations – Xenioo 32 32 HOW TO build a complete food delivery chatbot (Part 1) /how-to-build-a-complete-food-delivery-chatbot-part-1/ /how-to-build-a-complete-food-delivery-chatbot-part-1/#respond Wed, 11 Jan 2023 16:06:19 +0000 /?p=9902 In our previous How To Build post series, we’ve detailed how to build a complete Q&A chatbot using Xenioo AI engine, database, and flow capabilities. In this first of two-part posts where I’m going to detail instead all the steps to build a complete Food Delivery chatbot. Thanks to Xenioo’s built-in AI, Database, and advanced Conversation features you’ll see how it is possible to realize such a powerful and smart chatbot without writing a single line of code. The How To ...

Read MoreHOW TO build a complete food delivery chatbot (Part 1)

The post HOW TO build a complete food delivery chatbot (Part 1) appeared first on Xenioo.

]]>
In our previous How To Build post series, we’ve detailed how to build a complete Q&A chatbot using Xenioo AI engine, database, and flow capabilities.

In this first of two-part posts where I’m going to detail instead all the steps to build a complete Food Delivery chatbot. Thanks to Xenioo’s built-in AI, Database, and advanced Conversation features you’ll see how it is possible to realize such a powerful and smart chatbot without writing a single line of code.

The How To Build posts series aims to show how a complete chatbot can be built using all of the available Xenioo features with the highest possible detail. By the end of each post, you will gain insight into basic and advanced Xenioo functionalities and be ready to try more complex approaches. All of the additional material used for these posts and the complete chatbot are made available here for download or inside the Xenioo templates section.

The case for a Food Delivery Chatbot

During the last two years, we’ve witnessed tremendous growth in e-commerce chatbots. By either working as “on the side” consultants or being the first line of sales, these chatbots are for all intent and purpose driving thousands of product sales. The Food industry, and in particular the home delivery services part of it, has definitely embraced this trend by acquiring all the good aspects of this kind of revolution:

  • Your chatbot can work with multiple customers simultaneously. You’re not missing any more phone orders because customers find a busy line and stop waiting;
  • If your restaurant is also serving seated customers, no one needs to answer any call and get distracted from regular service;
  • Orders are written clearly and checked multiple times by your customers. No more wrong orders because of over-the-line misunderstandings or badly written notes;
  • Your customers can update orders anytime, even after placing them, instead of calling your restaurant multiple times;
  • Doing some kind of promotion? Reaching out to your previous customers would be a lot easier than putting out paper fliers no one is reading.

If you feel like your business could benefit from one or more of these improvements keep reading as we’re going to build the definitive food delivery chatbot!

Building our chatbot

The first step for building a successful chatbot is to have a list of the main features we’ll need to implement so that we know how to set up our flow. A food delivery chatbot needs to be capable, at the very least, to:

  1. Take orders from customers using a free dialogue approach;
  2. Allow customers to review, edit and confirm their orders;
  3. Take direct payment from our customers;
  4. Get customer location to set up a delivery route;
  5. Engage with our delivery personnel, dispatching orders and routes;
  6. Let the customer check the order state;
  7. Collect service feedback after the order has been delivered;
  8. Signup our customers for a promotional campaign so that we can engage them with new offers;

Not a bad list of features right? Now let’s see how we can tackle all of these points with Xenioo: let’s create a brand new chatbot in our account and let’s start building!

Creating our Food Menu

In order to allow our chatbot to get orders we need to first create some kind of menu. Our menu will contain all of the information about each and every food served by our imaginary restaurant.

To create our menu we will use all the power of the Xenioo Database feature: we’ll store in our menu collection all of the information we need to display, search and categorize the food we sell.

Let’s head to the Database section of our brand new chatbot and create a new collection named “menu”. We will be adding to menu items data such as name, description, price (obviously!), image, and, since we’re at it, also possible intolerances that our customers may be worried about.

Using the group property of our collection fields we’ll make sure to split our data into different sections so that Xenioo will build a nice data-entry form for us, without writing a single line of code. Once our collection is created we can head to the add new button and select “Add new record with form” to start our data entry.

Xenioo has automatically built for us a complete data entry form with the right input control for each of our fields. Boolean fields are shown as checkboxes, numeric fields have already set decimals or whole numbers and file type fields can manage your attachments and automatically store them in your account storage. All we have to do now is add all of our menu items.

As we have seen also in our previous Let’s Build Post, records can be exported and imported directly using simple CSV files. This makes it incredibly easy for you to manage your data: if you happen to have already a menu in an excel format or, later on, if you wish to maintain your whole food offering using excel. Better yet, if you do not wish to create collection fields manually, you can just import your CSV file directly and Xenioo will import all columns as fields and do all the heavy lifting for you.

Using Xenioo granular users permissions activated by the Pro Team package, it is also possible to create a user that can access only the Database section of the chatbot. Just imagine building a chatbot for your restaurant customer and then giving them a full back office to let them maintain their own data. How much development time would software like this take usually?

Training our NLP Model

Once we’re happy with our menu data we can move on to training our NLP model. What we’re going to do next is basically teach Xenioo how to handle the different requests that may come from our customers. To do this, the first thing to do is to move to the AI section of our chatbot and create a brand new intent.

Within a chatbot, intent refers to the goal the customer has in mind when typing in a question. For our restaurant, the very first intent will be “Food Ordering”.

Let’s go ahead and create the intent by clicking on the add intent button. All we need to do now is just give it a name and click on Save. We’ll be back later to add more details.

Once our intent is created let’s double-click on it to move to Expressions editing. In an intent, expressions are the utterances we’re expecting our customers to use to express their goals. We can set up some typical examples now and fine-tune our training later, even while our chatbot is live.

For our restaurant, a Food Ordering intent may have expressions such as “I want a pizza” or “I would like two margherita and a blonde beer” and so on. Let’s add some typical expressions to our expressions list.

You don’t really need to think of all of the possible ways your customers may order food. Just write some of the most typical and the Xenioo engine will be capable of understanding also expressions that diverge from what you’ve entered.

Of course having our chatbot understand our customer’s expressions is just half of the job: what we really need is to understand what exactly they are asking for. Is it a pizza? If so, what pizza? Do they want a beverage? What exactly do they want to drink?

The information that can be found inside an expression is called Entity. An entity represents a value that can be extracted from the expression and later used by your chatbot. For example in the expression “I want a pizza margherita” what we really need to know is that the required pizza is Margherita and that our customer wants just one.

Usually, we would just go ahead and click on the parts of the sentence that may represent our entities but since we already built our menu we could make things even faster and use our database as an entity list. Let’s move to the Entities section and create a new entity called “food” where we say that the data is coming from our collection.

All that we need to do here is select our collection and pick which fields we would like to represent the possible entity name and the possible synonyms of our entity. Once we’re done with the creation we can just hit save to confirm our entity.

Now, all we need to do to make Xenioo apply our entities to our expression is head to the Train & Test section. After a very short while, Xenioo will finish modeling our expressions. If we go back to our Food Ordering intent and double-click on it we’ll see how our expressions list has changed.

As you can see now some of our words are highlighted. That is Xenioo showing that some of the words are now recognized as entities. It means that the values that will be found will be made available to our chatbot during the flow.

Let’s try our NLP training by clicking on the Train & Test section again. On the input box, to test our training, we type “I’m eating a margherita and a cold blonde”. Press enter or click on Evaluate Expression to see the results.

The sentence is way different from any other we’ve been training but still, Xenioo manages to get a 61% score best of all, as you can see, we get our food recognized automatically. If we were in a real conversational situation, $food and $food2, our entities, would be available to our chatbot as standard variables, ready to be used in any part of the flow.

Speaking of flow, it is time to move to the build section and start creating our chatbot!

The post HOW TO build a complete food delivery chatbot (Part 1) appeared first on Xenioo.

]]>
/how-to-build-a-complete-food-delivery-chatbot-part-1/feed/ 0
How To Connect Your CRM To A Microsoft Teams Chatbot /how-to-connect-your-crm-to-a-microsoft-teams-chatbot/ /how-to-connect-your-crm-to-a-microsoft-teams-chatbot/#respond Mon, 01 Jun 2020 13:54:48 +0000 /?p=2885 Having to manage a support team and a huge number of customers is a task already daunting by itself. On top of that, add the need to keep track of who did what and when and you will be quickly facing a continuous jump from one tool to another that can easily slow all your process to a crawl. That’s why we are talking your about Microsoft Teams Chatbot. Because your customers and contacts are in one spot. Your tickets ...

Read MoreHow To Connect Your CRM To A Microsoft Teams Chatbot

The post How To Connect Your CRM To A Microsoft Teams Chatbot appeared first on Xenioo.

]]>
Having to manage a support team and a huge number of customers is a task already daunting by itself. On top of that, add the need to keep track of who did what and when and you will be quickly facing a continuous jump from one tool to another that can easily slow all your process to a crawl. That’s why we are talking your about Microsoft Teams Chatbot. Because your customers and contacts are in one spot. Your tickets and contracts are somewhere else. All your team is (luckily!) on Microsoft Teams.

When a new employee comes in, you have to share access or create new users on the various tools. On top of that, training needs to be done for those tools and more time is lost.

Does this sounds familiar?

What if we could have someone else take care of all this? Even better: what if we could have a bot take care of all this?

Getting Everything Ready

The first thing we need to do for our example is to setup everything we need:

Once you’re set with your accounts, its time to start our journey!

Building The Bot AI

We want our chatbot to be usable from anyone without any specific training and for this, we need it to be able to answer to standard free text questions like “Do we know Mary White?” or “Who is Mary White” and so on.

To do so we are using Xenioo native AI engine and add a good number of question variations.

xenioo AI chatbot engine


The AI Engine interface is very straightforward and setting all of our expressions is very fast. Also, thanks to inline entities creation, we can just click on our person name and identify that as a person_name entity to be used later.

Once we’re happy with all our expressions, we can check the training right away by moving to the Train & Test section.


Great. Xenioo AI engine is quickly trained and inside our sentence, a person’s name is recognized. But our person_name entity was trained on a single name: john.

Let’s try changing it…”do we know anyone named Mary?


Whoops. No person_name detected and lower match. Why? Because by default, Xenioo entities lookup for an (almost) precise match between the source entity and the user input text, and in our case, all Xenioo knows is john.

A way of solving our problem would be to add each and every possible name as a variation of our entity. We could reach a much bigger number of variations but still not all possible names. Also, our users may search for a company or a partial email.

How can we make Xenioo extract the data we want but just accept any text?

The answer is Wildcard Entities. These special entities will precisely extract any text outside of the fixed expression words and automatically assign it to the entity variable.

Let’s change our entity to a wildcard and try again with a random name.

Perfect. Now we can just use any name in any expression and whatever we write it will be passed directly to our variable.

We will use the person_name variable to do an API lookup on our HubSpot contacts list.

Designing The Flow of your Microsoft Teams Chatbot

Designing The Flow of your Microsoft Teams Chatbot

The flow is very simple here: our search intent will trigger a search on HubSpot.

We need to look if at least one contact is found, we will display a card with a photo and some details. If no contact is found, our bot will ask if we want to create a brand new contact.

If our user chooses so, instead of redirecting to HubSpot, we will display a custom Xenioo Form with all the basic fields our company requires, and then we will create the contact directly on HubSpot.

Thanks to Xenioo preview capabilities we can test our bot right away and see if it meets our requirements. Once we’re happy with how it behaves its time to setup our Microsoft Teams Chatbot integration.

Creating a Microsoft Teams Chatbot

With our flow ended, we have our bot ready for prime time. Let’s click on the publish button and on the Microsoft Teams icon. The Microsoft Teams Chatbot publishing dialog will appear.

publishing the microsoft teams chatbot

We miss some information that only Teams can give us but for now, let’s take note of the Messaging Endpoint that Xenioo just created: we will need it in a couple minutes.

Microsoft Teams bots are basically applications defined by a ‘manifest’. A bot manifest is a small file containing all of the basic information about our bot like its name, icon, or permissions.

To create a new manifest for our bot, we need first to install a Teams App called App Studio. To do so, just click on the Apps icon on your Teams Desktop interface and click on the App Studio box. If the box is not visible a quick search should highlight it.

installing App Studio

After App Studio is installed you’ll find its icon on the left bar or under the three dots at the bottom of it. Click on the icon and then select “Manifest Editor”. That’s what we need as we’re creating a brand new Teams Application.

App Studio will display a number of descriptive fields detailing your new Application. Feel free to fill them as you please as they are pretty much all descriptive.

What we’re looking for is the Bots section, under capabilities. From there, just click on the single “Set up” button you will see.

Name your bot as you like but just make sure to specify that your bot can upload and download files if you wish to exchange files with it.

set up microsoft teams chatbot on app studio

Click on “Create bot” to create your bot. After a short while, your bot page will change with your bot details. Copy the bot id in the Bot Id field in the Xenioo publish dialog.

All we’re missing now is a password for our bot: click on “Generate new password” to have Microsoft Teams create one for you. Copy the password and paste it in the Bot Password field shown in Xenioo.

connect your microsoft teams chatbot

Last, but not least, copy the Xenioo webhook endpoint from the Xenioo publish dialog inside the Messaging Endpoint field. You should see a green icon appear right next to the field when the connection is done.

Make sure that everything is saved and move to the last option at the bottom: Test and distribute.

From this page, you can choose to install this app on your Teams account or download it to give it to another team (yes, you could actually create general-purpose bots that are used from multiple teams!).

If your account has the required permissions you can proceed to install your new app directly by clicking on install.

If you don’t, you can just download the app manifest and move back to the Apps section where you can upload it using the “Upload a custom app” menu at the bottom.

Whatever you choose, after a couple of seconds you’ll find your new app listed among the available apps. From there just click it and add Microsoft Teams Chatbot to your channel.

Now confirm your Xenioo publish page and it’s done! Our chatbot is online and connected.

Time For A Test Run

A simple hello from us will display a random fallback phrase confirming that everything is fine and connected (and that we need to teach our bot some chit-chat skills!).

We can now chat with it directly, in a one-to-one chat or we can invite it to one of our channels: once invited our bot can be invoked by just a standard message mention.

Let’s see how it could work in a day to day channel chat.

YouTube Video

Our bot stays in the channels we want and its ready to reply to anyone as soon as its mentioned.

Our CRM with contacts and leads is now available to anyone in the channel without any special training and accounts.

Wrap Up

Microsoft Teams Chatbot is a great addition to any channel being the tools you invoke anytime you need some specific information.

There’s a number of useful ideas bouncing around right now from business trip weather advisor to conversational billable hours filler (“Hey @Bot, I’ve just worked 2 hours for Customer X”…wouldn’t that be great?).

What about you? Ready to shape your ideas and improve your Teams experience? Join Xenioo and let us know!

The post How To Connect Your CRM To A Microsoft Teams Chatbot appeared first on Xenioo.

]]>
/how-to-connect-your-crm-to-a-microsoft-teams-chatbot/feed/ 0
8 Awesome Custom Styles For Your WebSite Chatbot /8-awesome-custom-styles-website-chatbot/ /8-awesome-custom-styles-website-chatbot/#respond Fri, 10 Apr 2020 09:08:40 +0000 /?p=2719 A Website Chatbot has now become a staple of each and every modern home page. From serious corporate web pages to more stylish and graphical personal or small business pages, the small icon at the bottom right (or left!) has become a given. Whether you prefer a more direct, operator-to-person chat, whether you choose a more automated approach, doing a web page today means basically having a chat area somewhere. Today designers struggle with their generic chat platform basic colors ...

Read More8 Awesome Custom Styles For Your WebSite Chatbot

The post 8 Awesome Custom Styles For Your WebSite Chatbot appeared first on Xenioo.

]]>
A Website Chatbot has now become a staple of each and every modern home page. From serious corporate web pages to more stylish and graphical personal or small business pages, the small icon at the bottom right (or left!) has become a given.

Whether you prefer a more direct, operator-to-person chat, whether you choose a more automated approach, doing a web page today means basically having a chat area somewhere. Today designers struggle with their generic chat platform basic colors and limited layout configurations and your web chat usually ends up looking like an afterthought at best.

Luckily for you, Xenioo offers both a UI configuration interface and the ability to go deeper, allowing full layout customization of each and every component.

What you’re going to see next are some examples of how you can completely redesign the Xenioo web interface to fit with a number of different web layouts. All the example style sheets are supplied for free! Look out for the full link at the end of the article.

Let’s look at some website chatbot layouts

1. Dark

website chatbot

Dark mode themes are definitely the flavor of the day and creating this kind of layout with Xenioo is super easy. The main elements here follow the general website prominent colors giving your chatbot area a stylish lookout.

2. Ice Cream

website chatbot

Xenioo web chat is not limited to the classic button-chat-area setup but can be quickly deployed as a full page or attached to a very specific area of your page. Our sample page shows a very nuanced theme that can be easily embedded in colorful commerce or portfolio page.

Whether you prefer a more direct, operator-to-person chat, whether you choose a more automated approach, doing a web page today means basically having a chat area somewhere.

3. Seaside

website chatbot

When your website relies heavily on imaging and multiple product areas the best approach to a chat zone may be to let the user see through it all. Seaside does exactly that. By eliminating the full frame of the chat and giving a full page transparent block to your chat, this theme will blend into your page seamlessly.

4. Skin

website chatbot

Again, with Xenioo you can choose wherever your chat needs to be: you are in full control of everything. This example style embeds your chatbot in a classy portfolio page that will both surprise and please your visitors. The chatbot lives in a vertical, nearly central band that can nicely replace any feedback form.

Also, they have that attraction factor that will lead to an increase in contact requests!

5. Dark Detached

dark detached

Dark themes can be perfect on full white pages too. By correctly balancing the website accent colors you get a reader-friendly and stylish panel. Using the full power of Xenioo styles we also detach the chat area from the user message are giving a nice general color break.

6. First Contact

first contact

Contact us forms are so 2018. Chatbots allow for far greater flexibility, can be easily integrated and already collect all the info you want in a more friendly way. Also, they have that attraction factor that will lead to an increase in contact requests!

7. Flat

Flat

Is your website leaning toward stylized shapes and flat layout? Yes? Then this is the style for you. Based on the typical flat layout, this style removes all of the round corners and aliased shapes giving each block greater importance.

Dark mode themes are definitely the flavor of the day.

8. Agency

website chatbot

Do you build chatbots or resell chatbot services? You should definitely get in touch with us. In the meanwhile, this embedded chat theme should give you a great idea on how to embed a window-less chatbot directly into your landing page.

Ready to unleash your website chatbot inner designer?

Great! You can start by downloading all the Xenioo style sheets you’ve seen on this article for free. You’re completely free to use them on your website, modify them and add new content.

Questions? Doubts? Be sure to join our ever-growing group @ Facebook

Credits

Some of the awesome themes we have used to showcase our Xenioo layouts here have been created by talented designers and are currently available for purchase from their respective creators. You can find all the direct links below:

The post 8 Awesome Custom Styles For Your WebSite Chatbot appeared first on Xenioo.

]]>
/8-awesome-custom-styles-website-chatbot/feed/ 0
Potenzia il tuo chatbot con Xenioo Forms: 8 Casi d’uso /potenzia-il-tuo-chatbot-con-xenioo-forms-8-casi-duso/ Sun, 01 Mar 2020 16:02:17 +0000 https://wp-it.xenioo.com/?p=2146 Uno degli ultimi aggiornamento di Xenioo include una nuovissima funzionalità che cambierà radicalmente il modo in cui approcciare la raccolta di dati nel tuo chatbot: Xenioo Forms. In Xenioo siamo fortemente convinti della validità dei classici flussi conversazionali o guidati, ma ci siamo anche resi conto che non tutto può essere raccolto da un (lungo) elenco di domande. Infatti alcune informazioni sono più intuitive e rapide da fornire per l’utente quando sono presentate sotto forma di moduli di richiesta dati ...

Read MorePotenzia il tuo chatbot con Xenioo Forms: 8 Casi d’uso

The post Potenzia il tuo chatbot con Xenioo Forms: 8 Casi d’uso appeared first on Xenioo.

]]>
Uno degli ultimi aggiornamento di Xenioo include una nuovissima funzionalità che cambierà radicalmente il modo in cui approcciare la raccolta di dati nel tuo chatbot: Xenioo Forms.

In Xenioo siamo fortemente convinti della validità dei classici flussi conversazionali o guidati, ma ci siamo anche resi conto che non tutto può essere raccolto da un (lungo) elenco di domande. Infatti alcune informazioni sono più intuitive e rapide da fornire per l’utente quando sono presentate sotto forma di moduli di richiesta dati standard.

Ma come possiamo far convivere conversazioni e moduli richiesta dati (chiamamoli per comodita forms da qui in avanti) ? Xenioo Forms è la nostra risposta a questa domanda!

Grazie all’utilizzo di nuovi elementi dinamici direttamente all’interno del nostro designer, è possibile creare moduli di richiesta dati anche complessi e che si integrano perfettamente all’interno del tuo chatbot.

Immagina di poter costruire un modulo che può essere precompilato al volo con i dati provenienti dal tuo chatbot, oppure un sondaggio che si adatta in base ai risultati della conversazione appena avvenuta.
Tutto questo, e molto altro ancora, è ora possibile grazie a Xenioo Forms e nei prossimi paragrafi vedremo alcuni casi d’uso nel mondo reale.

1. Accedere ad un servizio protetto

Di solito, nel momento in cui il chatbot deve consentire all’utente l’accesso ad un proprio account tramite credenziali private, è quando iniziano le difficoltà.

Come chiedere all’utente le credenziali di accesso? Come gestire la richiesta di una password in chiaro e che può essere vista da chiunque sovraintenda alle conversazioni? Gli utenti del chatbot sono a proprio agio nel fornire le proprie credenziali all’interno di una chat? Assolutamente no (e per mille buoni motivi)!

Grazie a Xenioo Forms sarà ora possibile creare un modulo di accesso perfettamente funzionante ed integrato con il tuo chatbot. Questo non solo ti aiuterà nel raccogliere i dati di cui hai bisogno, ma darà ai tuoi utenti la percezione che tutto stia accadendo in una sezione specifica e sicura della conversazione.

YouTube Video

2. Registrare un nuovo account

I moduli di registrazione sono più complessi rispetto ai moduli di accesso poichè è spesso necessario assicurarsi che sia stato inserito un indirizzo email corretto oppure che la password scelta dall’utente soddisfi alcune regole di sicurezza standard.

Costruito partendo dall’esperienza acquisita sul campo, Xenioo Forms non è solo un insieme di nuovi campi, ma rappresenta una soluzione completa per il disegno di moduli personalizzati.

E’ possibile infatti creare regole complesse basate sulle espressioni regolari che, applicate durante l’immissione dei dati, assicurano che tutto quanto inserito sia conforme a ciò che ci si aspetti.

YouTube Video

E, naturalmente, tutto quanto fornisce Xenioo Forms è stato pensato per offrire la migliore esperienza utente indipendentemente che l’utente acceda da dispositivi mobile oppure desktop (nel caso in cui il tuo canale di pubblicazione preferito preveda una versione desktop).

YouTube Video

3. Raccogliere feedback

L’acquisizione di feedback(suggerimenti) da parte degli utenti è uno dei cardini per ogni business di successo.

Farlo su alcune piattaforme, come per esempio Whatsapp, può diventare più complicato del previsto in quanto controlli e contenuti avanzati non sono disponibili.

Grazie a Xenioo Forms, creare un modulo per la raccolta di feedback è facile come creare un semplice flusso composto da testo ed immagini. Fare in modo che i dati appena raccolti possano essere inviati per esempio a Zapier, Firebase oppure verso qualasiasi altro tipo di integrazione tu preferisca, è un gioco da ragazzi.

YouTube Video

4. Gestire prenotazioni

Stai creando un chatbot che necessita di gestire un qualsiasi tipo di prenotazione da parte dell’utente?

Chiedere all’utente domande specifiche in modo colloquiale e mirato è qualcosa che puoi costruire facilmente con Xenioo e per tutti i canali che desideri rendere disponibili. Ma ammettiamolo! Ad un certo punto potresti aver bisogno di cosi tante informazioni da richiedere una dopo l’altra da trasformare il processo in qualcosa di molto noioso e frustrante per l’utente.

Potendo integrare controlli complessi e selezioni a scelta multipla, senza scrivere una sola riga di codice, Xenioo Forms ti permette di creare moduli di prenotazione perfetti per il tuo business in pochi minuti.

YouTube Video

5. Raccogliere informazioni quando offline

Xenioo fornisce tutti gli strumenti di cui hai bisogno per creare la miglior esperienza di assistenza clienti sia per chatbot completamente automatizzati che gestiti da operatori umani.

Ma come puoi gestire la situazione che si verifica quando i tuoi operatori non sono disponibili?

Quando tutti i tuoi operatori sono offline, puoi usare Xenioo Forms per creare un modulo completamente personalizzato in grado di raccogliere le informazioni dell’utente al posto tuo. Non appena i tuoi operatori torneranno online, avranno a disposizione tutto il necessario per contattare nuovamente i clienti e continunare la conversazione online.

YouTube Video

6. Completare un ordine

Il tuo chatbot è in grado di dare la giusta assistenza ai tuoi clienti?

Con i moduli che è possibile creare con Xenioo Forms puoi facilmente creare una esperienza di check-out completa ed altamente personalizzabile, sia nei contenuti che nella presentazione.

YouTube Video

7. Effettuare ricerche avanzate

L’utilizzo dei chatbot in ambito aziendale e B2B(business to business) sta crescendo e diventando sempre più comune. Molti clienti Xenioo utilizzano già chatbot all’interno delle proprie applicazioni private per aiutare e guidare i propri utenti.

Andando oltre il semplice aiuto, il livello successivo del prossimo assistente virtuale può essere quello di diventare parte integrante della tua infrastruttura di knowledge base: il punto ideale dove gli utenti possono ricercare e trovare informazioni, reports e documentazione aziendale.

Perchè cercare tra un elenco infinito quando puoi semplicemente chiedere al tuo assistente il rapporto del mese scorso?

Con Xenioo Forms puoi ottimizzare le ricerche creando moduli con filtri, rapidi ed efficaci.

YouTube Video

8. Creare buoni sconto dinamici e volantini

I moduli che puoi creare con Xenioo Forms sono cosi flessibili che puoi usarli non solo per raccogliere dati, ma anche come pagine di contenuti(landing page) da consegnare ai tuoi utenti senza utilizzare alcun hosting esterno o web design.

Usa Xenioo Forms ed il tuo chatbot potrà facilmente distribuire volantini o buoni sconto che gli utenti potranno stampare o semplicemente usare quando richiesto.

YouTube Video

Forte! Quando e come posso iniziare con Xenioo Forms?

La buona notizia è che tutto ciò che ti serve altro non è che Xenioo. Esatto: nessun server e nessun back-end esterno per ospitare i tuoi dati.

Tutto viene creato e gestito da Xenioo ed è perfettamente integrato con il tuo chatbot.

Devi solo registrare un account gratuito su Xenioo e dare libero sfogo alla tua creatività.

Hai creato qualcosa con Xenioo Forms che vuoi condividere? Hai qualche domanda da farci? Fai un salto sul nostro gruppo Facebook e unisciti alla nostra community sempre crescente di creatori chatbot.

The post Potenzia il tuo chatbot con Xenioo Forms: 8 Casi d’uso appeared first on Xenioo.

]]>
chatbot Data collection with Xenioo forms: 8 awesome Use cases /chatbot-data-collection-with-xenioo-forms-8-use-cases/ /chatbot-data-collection-with-xenioo-forms-8-use-cases/#respond Tue, 31 Dec 2019 15:38:53 +0000 /?p=2509 The latest Xenioo major upgrade brings a brand new feature that will change the way you approach chatbot data collection: Xenioo Forms. Here at Xenioo we firmly believe in conversational and standard flow patterns, but we also realized that not everything can be collected by a (long) list of questions as some information are still quicker and more intuitive for the user when presented in a standard form layout. But how can we marry conversations and forms? Xenioo Forms is ...

Read Morechatbot Data collection with Xenioo forms: 8 awesome Use cases

The post chatbot Data collection with Xenioo forms: 8 awesome Use cases appeared first on Xenioo.

]]>
The latest Xenioo major upgrade brings a brand new feature that will change the way you approach chatbot data collection: Xenioo Forms.

Here at Xenioo we firmly believe in conversational and standard flow patterns, but we also realized that not everything can be collected by a (long) list of questions as some information are still quicker and more intuitive for the user when presented in a standard form layout.

But how can we marry conversations and forms? Xenioo Forms is our answer to the question.

Using highly dynamic field compositions built directly inside our designer, you can create complex forms that fully integrates with your chatbot flow.

Imagine building a form that can be filled with your chatbot data on-the-fly or a survey that adapts to what the user did inside a conversation. This is entirely possible now and in the following chapters, we’re going to see some real-world use cases.

1. Log In To Your Service

Usually, when your chatbot needs to log in your user to an account is when troubles start.

How do you ask your user to login? Are you requesting a password in plain text that may be seen by anyone overseeing the conversations? Are your users comfortable with giving away credentials inside a chat? Absolutely not (and for good reason!).

Using Xenioo Forms you can now build a fully functional and cool looking login form that will help you collect the data you need and give your users the idea that everything is happening in a specific, secure section of the conversation.

YouTube Video

2. Account Sign Up

Signup forms are more complex than standard forms as you often need to make sure that a correct email address has been used or that the password your user is choosing meets some basic security parameters.

Building from the foundation of our experience, Xenioo Forms are not just standard fields but a complete package.

You can build complex, regular expression based rules that will be enforced during data entry and will ensure that your data contains exactly what you expect.

YouTube Video

And of course, the experience is built to have a seamless experience whether your user is accessing from mobile or desktop (if your channel of choice has a desktop version).

YouTube Video


3. Collect Advanced Feedback

Acquiring feedback from users is one of the cornerstones of successful business.

Doing this on some platforms (like WhatsApp for example) can become a little tricky as advanced controls and contents are not available.

Thanks to Xenioo Forms, creating a full feedback form is now as easy as building your chatbot flow with text and images and have all of the data fly to Zapier (ora any other integration you like) is as easy as it gets.

YouTube Video

4. Make Detailed Reservations

Are you building a booking chatbot? Asking your users detailed questions in a conversational fashion is surely a very nice experience that can be built with Xenioo on every channel but let’s face it: at some point, you’re going to need a lot of information and asking and an endless train of questions may become tiresome at some point.

By being able to integrate complex controls and multiple-choice drop-downs, without writing a single line of code you will create the perfect reservation form in just a matter of minutes.

YouTube Video

5. Collect Information When Offline

Xenioo providers all of the tools you need to set up a great customer support experience for both automatic and operators managed chatbots.

When all of your operators are offline, you can create a fully customized offline form that can collect user’s information for you. As soon as your operators come back online, they’ll have everything they need to contact back your customers!

YouTube Video

6. Order Details Completion

Is your chatbot assisting your customer’s shopping? With Xenioo forms you can easily re-create a full checkout experience with all the control on contents, layout, and behavior.

Customizable content allows for even greater flexibility as you can really build whatever functionality you may need.

Your shop can be open 24 hours a day and be available on multiple channels at once.

YouTube Video

7. Advanced Search And Filters

Corporate and Enterprise usage of chatbots inside intranets are becoming more common and many Xenioo customers are already using chatbots inside private applications to help and guide their own users.

Moving forward from just helping, the next level of your virtual assistant can be to become an integral part of your application by being the go-to place for wizards, quick searches and reporting.

Why search through an endless list when you can just ask your assistant for last month’s report?

With Xenioo forms you can see how you can fine-tune your results by creating quick forms for search, filter and reporting results.

YouTube Video

8. Dynamic Coupons And Tickets

Xenioo Forms are so flexible you can use them not just for collecting data. You can also deliver to your users without using any external hosting or web design.

Your chatbot can now easily deliver flyers or discount coupons your users can print or just show whenever required.

YouTube Video

Great! What Do I Need To Start?

The good news is that all you need for all of this is Xenioo. That’s right: no servers and no complex back-end to host your data.

Everything is created and managed by Xenioo and is seamlessly integrated with your chatbot.

All you need is to signup for a free Xenioo account and unleash your creativity!

Have a great example to share? Any questions you want to ask? Drop by our Facebook Group and join an ever-growing community of chatbot creators.

The post chatbot Data collection with Xenioo forms: 8 awesome Use cases appeared first on Xenioo.

]]>
/chatbot-data-collection-with-xenioo-forms-8-use-cases/feed/ 0
Come Creare Una Skill Alexa Con Xenioo (Parte 2) /come-creare-una-skill-alexa-con-xenioo-parte-2/ /come-creare-una-skill-alexa-con-xenioo-parte-2/#respond Sun, 28 Jul 2019 10:59:00 +0000 https://wp-it.xenioo.com/?p=2085 Nella prima parte abbiamo esplorato i concetti di base che stanno dietro la creazione di una skill Alexa pienamente funzionante e realizzata utilizzando la piattaforma chatbot Xenioo. In questa seconda parte andremo a vedere nel dettaglio alcune funzionalità avanzate quali lo streaming audio, la gestione degli stati e l’account linking. Riproduzione audio Per inviare genericamente dell’ audio ad un dispositivo Alexa è possibile operare in due differenti modalità: attraverso l’invio di un piccolo campione, come per esempio un effetto sonoro, ...

Read MoreCome Creare Una Skill Alexa Con Xenioo (Parte 2)

The post Come Creare Una Skill Alexa Con Xenioo (Parte 2) appeared first on Xenioo.

]]>
Nella prima parte abbiamo esplorato i concetti di base che stanno dietro la creazione di una skill Alexa pienamente funzionante e realizzata utilizzando la piattaforma chatbot Xenioo.

In questa seconda parte andremo a vedere nel dettaglio alcune funzionalità avanzate quali lo streaming audio, la gestione degli stati e l’account linking.

Riproduzione audio

Per inviare genericamente dell’ audio ad un dispositivo Alexa è possibile operare in due differenti modalità: attraverso l’invio di un piccolo campione, come per esempio un effetto sonoro, oppure attraverso l’invio di una più lunga e complessa sorgente in streaming.

Entrame le opzioni possono essere usate insieme in una stessa skill, pur funzionando in modo completamente diverso.

Per l’invio di un piccolo campione audio è sufficiente aggiungere al chatbot una Audio Action, specificando la sorgente del file.

Lascia pure tutti i campi vuoti (non è necessario aggiungere ulteriori informazioni per il nostro scopo) e ricordati unicamente di settare il flag “Embed in speech encoding if available”.
Questo flag servirà a Xenioo per automaticamente creare il messaggio SSML audio necessario a riprodurre il tuo mp3 su Alexa.

Se l’audio è lungo (pensa per esempio ad una canzone oppure un podcast) e vorresti dare all’utente la possibilità di mettere in pausa, saltare avanti oppure fermare la riproduzione, è necessario procedere con la seconda opzione di cui abbiamo parlato precedentemente: l’ Audio Streaming.

Streaming audio

Per abilitare lo streaming dell’audio è necessario informare la skill di questa nuova abilità, abilitando l’uso dell’interfaccia Audio Player.

Questa interfaccia deve essere abilitata all’interno della propria Alexa Developer Console.

Non appena questa interfaccia viene abilitata, noterai che sono stati aggiunti automaticamente alcuni nuovi intenti alla skill.

Questo sono gli intenti che Alexa definisce per consentire la navigazione standard di una playlist: riproduci(play), prossimo(next), precedente(previous), fermati(stop) e pausa(pause).

Tutti questi intenti sono gestiti direttamente utilizzando la sezione di AI di Xenioo: è sufficiente abbinare ogni intento Xenioo con la chiave di intento nativa di Alexa, esattamente come abbiamo visto nella prima parte dell’articolo.

Xenioo costruirà automaticamente il modello corretto per gestire la riproduzione streaming dell’audio.

Se per caso stai costruendo una skill multilingua, assicurati di duplicare tutti gli intenti per ogni lingua che desideri supportare: Xenioo costruirà automaticamente il modello Alexa per ogni lingua.

Lavorare con gli eventi di Alexa

Un aspetto importante da considerare quando si lavora con l’audio su Alexa è come rispondere ai cambi di stato che possono avvenire durante lo streaming.

Alexa ci consente di sapere non solo quando lo streaming ha avuto inizio, ma anche quando sta per finire oppure è terminato.

Inoltre sel’utente ferma oppure mette in pausa, Alexa ci comunica l’esatta posizione in cui lo streamin è stato fermato e se la playlist necessita di essere impostata, rinnovata oppure cancellata.

Tutti questi eventi sono automaticamente gestiti dal Xenioo e rediretti al flusso del chatbot per poter essere gestiti nel modo più opportuno.

L’approccio di Xenioo è sempre lo stesso: rimuovere tutti le cose inutili dal flusso mantenendo allo stesso tempo il controllo su tutto.

Le azioni chiave in questo caso sono l’azione Control Device State e l’azione Device State Switch. Entrambe queste azioni riceveranno i cambi di stato dal dispositivo Alexa e potranno quindi essere usate per gestire il flusso di conseguenza.

Account Linking

La funzionalità di Account Linking implementa una serie di procedure che possono essere utilizzate per collegare (link) una Skill Alexa con uno specifica registrazione(account) presso un servizio di terze parti.

Per esempio, un utente potrebbe utilizzare la skill unicamente avendo una sottoscrizione attiva al servizio che la skill eroga.

Una volta che l’account linking è stato correttamente configurato e la skill è collegata al servizio, in Xenioo si avrà a disposizione una variabile alexa_account_link_token_variable, disponibile ovunque nel flusso, la quale identifica univocamente l’utente(utile per esempio per chiamare delle api del servizio autenticandosi come quell’utente).

Pubblicazione finale della skill

Dopo aver implementato una skill capace di fare streaming di contenuti audio con tutte le funzionalità come descritto nei paragrafi precedenti, siamo senza dubbio pronti per andare in produzione.

Xenioo ha passato al 100% tutte le verifiche di sicurezza richieste dai servizi Amazon ed è perfettamente adatto ad “ospitare” anche le skill più avanzate.

Stai costruendo una skill per streaming dei tuoi contenuti? Vorresti avere il tuo podcast disponibile in una skill Alexa?

Bene! Abbiamo già costruito un template completo e pronto da pubblicare che copre esattamente quanto abbiamo visto in questo articolo. E’ gratuito e disponibile all’interno del tuo account Xenioo!

Entra in Xenioo e comincia a lavorarci oggi stesso!

The post Come Creare Una Skill Alexa Con Xenioo (Parte 2) appeared first on Xenioo.

]]>
/come-creare-una-skill-alexa-con-xenioo-parte-2/feed/ 0
Usare un database Firebase in un chatbot /usare-un-database-firebase-in-un-chatbot/ /usare-un-database-firebase-in-un-chatbot/#respond Tue, 16 Apr 2019 08:58:12 +0000 https://wp-it.xenioo.com/?p=2019 In questo articolo andremo ad imparare come costruire un chatbot completamente dinamico, capace di estrarre e aggiornare dati in tempo reale da un database online usando Xenioo, Firebase e senza scrivere una sola riga di codice.

The post Usare un database Firebase in un chatbot appeared first on Xenioo.

]]>
In un nostro precedente articolo avevamo esplorarato come realizzare un chatbot completamente dinamico utilizzando dati letti da una fonte online, in quel caso si trattava di Sheetlabs.

In molti casi questo però non è sufficiente ed abbiamo bisogno della potenza di un vero e completo motore di database nel cloud.

In questo articolo vi faremo vedere come costruire un chatbot Xenioo integrando Firebase, la piattaforma Google che fornisce database e backend “as a service”.

La nuova integrazione Xenioo – Firebase

Firebase è la famosa piattaforma Google che fornisce un motore di database completamente online fruibile attraverso API restful.

Firebase offre un piano gratuito che è più che sufficiente per piccoli o medi scenari di utilizzo e consente di scalare progressivamente per gestire milioni di richieste.

Xenioo, in uno dei suoi ultimi aggiornamenti, ha introdotto l’integrazione nativa con Firebase, sia a livello di azioni che di scripting: andiamo subito a vedere come funziona!

Prima di tutto è necessario registrarsi per aprire un proprio account. Lo possiamo creare gratis da https://firebase.google.com/ seguendo tutta la procedura di registrazione. Se avete già un account Google attivo, il tutto risulterà ulteriormente rapido.

Dopo la registrazione, sarete pronti per creare il vostro primo progetto di database. Date un nome al progetto, accettate i termini del servizio e cliccate su Create.

Per il prototipo di questo articolo chiameremo il progetto XeniooIsAwesome.

Creiamo il Service Account

Dopo qualche secondo, il nosro nuovo database nel cloud sarà pronto.

Dobbiamo ora creare le informazioni di connessione che dovremo successivamente indicare in Xenioo.

Per creare una Firebase Admin Key, clicchiamo sulla piccolo ingranaggio in alto a sinistra e vicino a “Project Overview”, e poi clicchiamo su “Project Setings” e ancora sul tab “Service Account” (vedi figura qui sotto).

In fondo alla pagina dovrete ora cliccare il botton “Generate new private key”. Questo genererà un file JSON che conterrà le informazioni relative al vostro servizio di database appena creato: tenete questo file al sicuro in quanto vi servirà poi successivamente.

Creaiamo il database

Dopo aver creato il Service Account, cioè la nostra connessione privata con Firebase, siamo pronti per creare il nostro database. Lo faremo muovendoci nella sezione “Database”.

Clicchiamo sul bottone “Create Database” e Firebase creerà il databae per conto nostro.

A questo punto è doverosa una piccola precisazione. Come la maggior parte dei database online e di ultima generazione, Firebase è un database di tipo documentale e non relazionale.

Questo significa che non si avrà a che fare con tabelle a schema predefinito, come tipico per esempio in database come Sql Server oppure MySql.
In Firebase i dati sono memorizzati in collezioni che possono contenere un numero differente di oggetti (righe, se vogliamo usare un termine di paragone con la classica tabella del database relazionale) i quali possono avere ciascuno campi differenti.

Inizialmente questo potrà sembrare complesso, ma vederete con il tempo e la pratica come questo tipo di struttura permetterà di gestire con più flessibilità i dati che vorrete gestire all’interno del vostro chatbot.

Quello che faremo ora è ricreare la stessa tabella di colori che abbiamo usato in passato. Chiameremo quindi la nostra prima collection “Colors”.

Confermata la creazione della collection, siamo pronti per aggiungerci nuovi documenti all’interno.

Firebase fornisce un editor real-time molto ben fatto che rende molto semplice aggiungere e gestire dati all’intenro delle collection.

Aggiungiamo alcuni colori di esempio alla collection così da poterli poi utilizzare in Xenioo.

Quando siamo soddisfatti con i dati che abbiamo inserito, possiamo lasciare Firebase e tornare alla creazione del chatbot in Xenioo.

Faremo essenzialmente quanto già avevo visto nel chatbot dinamico per Whatsapp, ma con alcune interessanti modifiche.

Costruiamo il chatbot

La prima cosa che il nostro chatbot dovrà fare è mostrare agli utenti la lista dei possibili colori da selezionare, leggendo i colori dal database Firebase appena creato.

Per fare questo useremo l’azione Firebase Document, da inserire come prima azione nell’interazione di partenza.

I campi per configurare l’azione sono abbastanza esplicativi. Ricordatevi di fare copia e incolla del JSON generato precedentemente nel vostro account Firebase nel campo Firebase Account JSON dell’azione.

L’azione Firebase Document cosi configurata permetterà a Xenioo di connettersi automaticamente al vostro database Firebase per recuperare (comando LIST) l’elenco degli oggetti dalla collection Colors.

Ogni oggetto recuperato da Xenioo rispecchierà esattamente il modello dati creato nella collection su Firebase. Nel nostro esempio, il JSON risultante sarà qualcosa di simile all’immagine seguente:

Con questi dati recuperati, vogliamo che il chatbot mostri all’utente una serie di bottoni per ciascun colore in modo da permettere all’utente di selezionarne uno.

Abbiamo molteplici modi per fare questo con Xenioo, ma questa volta opteremo per la via più semplice. Sfrutteremo infatti capacità di Xenioo di tradurre le variabili al volo, caratteristiche che funziona anche con oggetti JSON come quellio appena recuperato da Firebase.

Aggiungiamo quindi una azione Quick Reply Array e, per i bottoni che vogliamo visualizzare, andremo a scrivere la variabile referenziando direttamente la proprietà colore in base alla posizione nell’array JSON.

Xenioo automaticamente sostituirà ogni riga {{ }} con il valore dell’oggetto, estraendone il valore della proprietà Color per la posizione nell’array come specificato.

Il risultato finale sarà che abbiamo costruito un chatbot a scelta dinamica e multipla basata su Firebase e senza scrivere una sola riga di codice!

Ovviamente, dovrete adattare il vostro array di bottoni in base alle opzioni che prevedete di visualizzare e gestire. Abbiamo già descritto come fare in uno dei nostri articoli precedenti utilizzando alcune righe di Xenioo cloud scripting.

Aggiungiamo dati nel database dal chatbot

Quello che potrebbe succedere prima o poi è l’esigenza di dover inserire o modificare il nostro database Firebase.

Potrebbe essere per registrare statistiche relative agli utenti, piuttosto che il tracking di azioni specifiche o ancora opzioni e settaggi da riutilizzare in conversazioni successive.

La buona notizia è che la stessa azione Firebase Document che abbiamo usato per leggere i dati, la possiamo confiugurare anche per inseririmenti ed aggiornamenti.

Riprendendo il nostro bot di esempio, vogliamo che l’utente possa indicare un colore personalizzato non presente in lista. E che questo colore venga poi inserito nel nostro database online.

Aggiungeremo quindi una nuova voce “Custom” nell’azione Quick Reply Array ed andremo a gestire la richiesta del colore personalizzato tramite l’azione Input Action.

La magia accade nella stessa azione che abbiamo usato precedentemente per leggere i colori.

L’unica differenza è che ora l’azione sarà configurata per gestire il comando CREATE e non LIST. Inoltre andremo a specificare il JSON dell’oggetto da inserire nel campo Document Payload.

Ecco nell’immagine seguente come andremo dinamicamente a specificare il nuovo colore da inserire tramite la variabile {{ custom color }} valorizzata dall’azione di Input.

E questo è tutto!

Se il nostro utente deciderà di selezionare un nuovo colore, questo verrà aggiunto alla collection Colors del nostro database Firebase e sarà disponibile per essere usato nel modo voluto.

Ancora, abbiamo appena costruito un chatbot a contenuto dinamico capace di estrarre e aggiornare dati in tempo reale da un database online, senza scrivere una sola riga di codice.

Ma, se volessi scrivere codice?

Certamente che potete! Infatti Firebase è strettamente integrato anche con l’azione Cloud Scripting di Xenioo.

Xenioo permette di accedere al database online via script, semplicemente ottenendo una referenza “live” al database in modo da poterlo usare direttamente per leggere e scrivere dati.

Il nostro esempio precedente potrebbe essere riprogettato utilizzando il codice seguente.

Meglio ancora, questo codice non usa gli indici per accedere e generare i bottoni ed è invece completamente dinamico: provate ad aggiungere nuovi colori all’oggetto db e vedrete come nuovi bottoni verranno visualizzati una volta fatta la preview del chatbot.

Come per tutte le nostre altre referenze tecniche, potete verificare sulle nostre pagine GitHub la lista compleata dei metodi Firebase disponibili con lo scripting.

Riassumendo

Il chatbot di esempio mostrato in questo articolo lo potete trovare qui. Scaricatelo ed importatelo nel vostro account Xenioo per provarlo, modificarlo o usarlo come punto di partenza per i vostri chatbot.

Non vediamo l’ora di sapere come e quanto vi spingerete oltre nell’utilizzare questa funzionalità per realizzare chatbot sempre più dinamici e capaci.

The post Usare un database Firebase in un chatbot appeared first on Xenioo.

]]>
/usare-un-database-firebase-in-un-chatbot/feed/ 0
How to make a Firebase chatbot using cloud data without code /firebase-chusing-firebase-cloud-data-without-code/ /firebase-chusing-firebase-cloud-data-without-code/#respond Mon, 15 Apr 2019 16:22:15 +0000 /?p=2195 In this articole we are going to learn how to build a dynamic data based chatbot capable of extracting and updating data in real-time from online database using Xenioo, Firebase and no single line of code.

The post How to make a Firebase chatbot using cloud data without code appeared first on Xenioo.

]]>
In our previous articles, we’ve already explored how we could use basic cloud data to create a completely dynamic chatbot. For many cases, it may prove to be enough but sometimes we just need the power of a full-fledged cloud database engine. That’ why we made this article to talk about how to build a Firebase chatbot capable of extracting and updating data in real-time using Xenioo and no single line of code.

firebase chatbot example

Enter Firebase Integration

Firebase is a well-known cloud-based database engine with a very generous free tier and a scaling that can easily handle millions of requests.

Our latest Xenioo update added full Firebase integration for both actions and scripting: let’s see how it all works!

First of all, we need to signup to for a new Firebase account. This can be done for free starting at https://firebase.google.com/ and following the signup procedure. If you already have a google account it will be quite fast.

After signup, you’re ready to create your first database project. Give it a name you like, accept the terms and click on Create.

For this article I’ll just go ahead and call my project XeniooIsAwesome.

firebase integration

Creating a service account

After a short while, your brand new cloud database will be ready.

What we need to do now is create an admin connection information that we can give to Xenioo.

To create a Firebase admin key, click on the small gear near “Project Overview” then click on “Project Settings”. After that, click on the “Service Accounts” tab.
On the bottom of the page, click on “Generate new private key”. This will generate a service account JSON file: keep this file somewhere safe as we will need it later.

create firebase account

Creating a database for your Firebase Chatbot

Once you’re done creating your service account, it is time to move to the “Database” section and create your first database.

Just click on the “Create Database” button and Firebase will create everything for you.

Now note that Firebase, like most cloud based and many of the last generation engines is a document/property based storage engine.

This means that you don’t really have a standard Table and Schema approach. Data is instead stored in collections that can contain a number of different objects (rows, if you want to use the table concept) that can all have multiple different fields.

This may sound confusing initially but it will become clear very quickly and gives you a lot more space to your chatbot and data to grow and adapt according to your requirements.

create firebase databse

Firebase new version

Some times after this article was initially published, Firebase updated his offer with two different databases engines: Cloud Firestore and Realtime Database. This article is focusing on Cloud Firestore integration.

We have already used the colors approach in the past. Let’s use it here too: we can call our first collection “Colors”.

Confirm the creation of your new collection and you’re ready to add new documents. Firebase has a very nice realtime editor that makes it very easy to add some sample data.

I’ll just add some color examples to my collection so that I can later use them in Xenioo.

Once you’re happy with your data, we are ready to leave our database console and move to our chatbot creation. We will be doing something similar to our previous dynamic WhatsApp chatbot but with some interesting twists.

Let’s build the Firebase Chatbot

With our database created, we’re now ready to start building our chatbot.

What we’re going to do at first, is showing the user the list of possible colors as options. To do so, we will start adding our Firebase Chatbot integration action at the very start of our chatbot.

The required fields are quite simple. Just remember to copy and paste your service account JSON in the Firebase Account JSON field on top.

With the above action, Xenioo will automatically connect to our Firebase instance and retrieve (LIST) every object in our Colors collection.

Each item retrieved by Xenioo will reflect the model of your Firebase collection. In our example the resulting JSON would be something like the following:

We want to present our users with a simple set of buttons to allow them to pick their favorite color.

We’ve multiple ways to do that (as it is often with Xenioo) but this time we’re going for the easiest using the power of Xenioo in-place variable translation which works even with JSON models.

We add a new Quick Reply Array action and, for the buttons we want, we just write our variables making a direct reference to array position and property. Much like we would be when working with live object models.

What happens automatically for you is that Xenioo will replace each placeholder in the text with a direct translation of your object, extracting the items at each position and using the Color property.

As a result, you’ve just built a Firebase based multiple choice chatbot without writing a line of code!

manage your firebase chatbot from the visual builder

Of course, as options grow or shrink you would need to adapt your buttons array. But we’ve already covered the fully dynamic chatbot version with just a couple of lines of Xenioo cloud scripting.

Adding new database objects from your Firebase Chatbot

What you’ll need to do at some point will surely be to insert or update existing database objects.

It may be some user-related statistics as well as some kind of order tracking or options saving system that you may need to retrieve later.

The good news is that the very same action we’ve just used can be configured for every need.

Continuing our example, we will allow our user to pick a custom color and tell it to us. After that, we will add the color to our database.

So we just add a new, Custom entry in our buttons array and manage the custom color with a standard Input action.

firebase chatbot flow

The magic happens in the same action we used at the beginning.

The only difference is that now the action is performing a CREATE and not a LIST. Also, we’re adding our object/document directly in our JSON payload.

Note how we specify the color value using the very same variable we’ve just used in our input action.

And that’s it!

As our user tell us a new favorite color, the new object is added to our database and we can use it in any other way we want.

We’ve just made a dynamic cloud data based chatbot capable of extracting and updating data in real-time. And still, not a single line of code.

Ok, but I like code

Sure, we all do! That’s why Firebase is also deeply integrated into Xenioo cloud scripting!

Now, wherever you need to access your database from any script you can just get a living reference of your database and use that directly from code.

We can translate our previuos example into the following code. Better yet, this example does not use direct indexes and is truly fully dynamic: just try adding a new color to the db object and see a brand new button as soon as you preview.

if you like coding your Firebase chatbot you can do it too

As with all our reference, you can check the full list of firebase database methods here where all the other scripting reference is constantly updated.

Build Anything

You’re welcome to try our example chatbot inside your account and let us know what you think.

We’re looking forward to seeing how you’re going to push also this feature to the extreme with dynamic, data-driven and capable chatbots.

The post How to make a Firebase chatbot using cloud data without code appeared first on Xenioo.

]]>
/firebase-chusing-firebase-cloud-data-without-code/feed/ 0
Come creare una Action Google Assistant con Xenioo /come-creare-una-action-google-assistant-con-xenioo/ /come-creare-una-action-google-assistant-con-xenioo/#respond Wed, 20 Mar 2019 09:31:46 +0000 https://wp-it.xenioo.com/?p=1895 In questo articolo andremo ad esplorare come funziona l'approccio multi-canale di Xenioo per poter pubblicare il proprio chatbot come una nuova Action di Google Assistant.

The post Come creare una Action Google Assistant con Xenioo appeared first on Xenioo.

]]>
Sono passati più o meno due mesi da quando abbiamo rilasciato in Xenioo il nuovo canale per la pubblicazione di chatbot vocali su dispositivi Amazon Alexa.

L’interesse verso le nuove piattaforme vocali è in forte crescita e di pari passo diventa necessario avere a disposizione strumenti evoluti che permettano di creare esperienze utenti sempre migliori con questi dispositivi.

Con l’obiettivo di diventare lo strumento di riferimento per la realizzazione di chatbot multi-piattaforma, siamo orgogliosi di annunciare un nuovo aggiornamento alla nostra offerta di canali con l’aggiunta del supporto per un’altra piattaforma vocale, tra l’altro diretta concorrente di Amazon Alexa: Google Assistant.

In questo articolo andremo ad esplorare come funziona l’approccio multi-canale di Xenioo per poter pubblicare il proprio chatbot come una nuova Action di Google Assistant.

Configurazione degli account

La prima cosa che ti serve per poter testare una Assistant Action è, ovviamente, un account Xenioo ed un account Google Actions Developer.

Ottenere il primo è semplice, clicca pure qui se non hai ancora creato la tua registrazione gratuita su Xenioo.

Per ottenere il secondo è sufficiente andare su questa pagina e registrarsi usando le proprie credenziali Google.

Una volta registrato il proprio account Google Actions Developer, cliccando su “Go To Actions Console” ti verrà mostrata una maschera dove saranno indicate le tue azioni correnti.

La dashboard sarà ovviamente vuota dal momento che abbiamo appena creato l’account. Possiamo quindi procedere cliccando su “Add/Import project” per creare finalmente la nostra prima azione. Dopo aver dato un nome al progetto, clicca su “Create Project”.

Dopo un attimo di attesa, viene reso disponibile l’ambiente di lavoro del progetto (Project Workspace) insieme ad una serie di templates pronti da utilizzare.

Dal momento che la nostra Action sarà creata e gestita da Xenioo, non ci interessa selezionare nessuno dei templates presenti. Scorriamo fino in fondo alla lista e selezioniamo e confermiamo “Actions SDK”.

Possiamo così abbandonare la dashboard di Google Actions per andare a creare il nostro chatbot su Xenioo.

Creazione del chatbot

L’approccio di lavoro multi-piattaforma di Xenioo ci consente di creare il chatbot e di cominciare a progettarlo fin da subito senza doverci preoccupare del canale dove verrà pubblicato.

Nel nostro esempio andremo a costruire un semplice gioco: il chatbot sceglierà un numero casualmente e all’utente verrà chiesto di indovinarlo.

Per fare questo ci serviremo della NLP di Xenioo, creando un intento che chiameremo “Indovina il colore” (“Guess The Color”) ed aggiungendo tutte le possibili espressioni.

Non sapremo mai esattamente come l’utente esprimerà la propria risposta, quindi è conveniente essere piuttosto generici nello specificare le diverse espressioni dell’intento. Per il nostro gioco abbiamo deciso di gestire 4 colori, per questo motivo andremo a definire il colore in ogni espressione come una Entità (Entity) da usare successivamente all’interno del flusso.

Una volta definite tutte le espressioni che riteniamo opportune, possiamo andare nella sezione di Training per testare e verificare che tutto funzioni a dovere.

Fatto questo possiamo tornare al nostro intento e collegarlo direttamente alla interazione del chatbot che si occuperà di rispondere ogni volta che l’utente proverà ad indovinare il colore.

Generare il colore casuale

Xenioo ha una azione molto interessante chiamata Random Split. Questa azione viene eseguita se un numero casuale, generato da Xenioo per ogni interazione, si trova all’interno di una certa soglia.

Combinando insieme queste azioni è possibile creare split test all’interno del chatbot, arrivando a gestire anche scenari molto complessi. Per il nostro esempio, ci servirà utilizzare alcune azioni Random Split per istruire il chatbot su come gestire la scelta casuale del colore, nel nostro caso associando la stessa percentuale di probabilità per ciascun colore.

Gestire la fine del gioco

Per rendere l’esperienza utente del nostro chatbot più simile a quella di un gioco vero e proprio, andremo ad impostare il massimo numero di tentativi che l’utente avrà a disposizione per indovinare il colore.

Per gestire questa situazione, ci serviremo di una variabile creata ad-hoc e che useremo come contatore dei tentativi errati.

Quando il valore di questa variabile sarà uguale a 3, il gioco sarà finito. Per coinvolgere maggiormente l’utente verrà sempre data alla fine del gioco la possibilità di ripartire dall’inizio.

Pubblicare il chatbot come una Google Action

Ora che il nostro chatbot è pronto per la pubblicazione, dobbiamo ritornare sulla dashboard della nostra Google Action per recuperare il suo Project ID.

Per fare questo, dobbiamo entrare nella sezione “Actions on Google” e cliccare su “Project Settings”.

Da questa pagina bisogna copiare il valore del campo Project ID che ci servirà per configurare la pubblicazione Google Assistant in Xenioo.

Per configurare Google Assistant in Xenioo dobbiamo cliccare prima sul botton “Publish” all’interno dell’editor del chatbot, e successivamente sul bottone “Google Assistant”. L’unico campo da configurare sarà il Project ID, che abbiamo appena recuperato dalla console Actions on Google.

Dopo aver premuto “Save” per salvare la configurazione, Xenioo chiederà di aprire uno speciale link di Google e di copiare/incollare un codice di attivazione. Questo codice sarà necessario per dare a Xenioo le dovute autorizzazioni per aggiornare la Google Action che stiamo pubblicando.

Eseguiti questi passaggi, l’ultima operazione è quella di cliccare “Publish” per mettere online il chatbot.

Nel nostro caso il chatbot verrà creato ed installato come una nuova Google Action, pronta all’uso immediatamente!

Non solo Google Actions

Lo abbiamo già detto all’inizio del nostro articolo: Xenioo non solo permette di creare chatbot per diverse piattaforme, ma fornisce un sistema di pubblicazione multi-canale rapido ed efficace.

Vorresti provare questo chatbot su Whatsapp oppure su un dispositivo Amazon Alexa? E’ semplicissimo, configura il canale e pubblicalo di nuovo!

Ricordati: con Xenioo tu progetti una volta sola e lo usi dove vuoi!

The post Come creare una Action Google Assistant con Xenioo appeared first on Xenioo.

]]>
/come-creare-una-action-google-assistant-con-xenioo/feed/ 0
Come creare una Skill Alexa con Xenioo (Parte 1) /come-creare-una-skill-alexa-con-xenioo-parte-1/ /come-creare-una-skill-alexa-con-xenioo-parte-1/#respond Thu, 27 Dec 2018 13:24:29 +0000 https://wp.xenioo.com/?p=989 La naturale evoluzione dei chatbot conversazionali è con tutta probabilità la trasformazioni verso veri e propri assistenti virtuali vocali. Amazon Alexa, Google Assistant, Duplex ed altre tecnologie emergenti, si integreranno perfettamente all’interno dei nostri dispositivi, consentendo esperienze di conversazione sempre più simili a quelle di solito affrontate con persone reali. Il “business della voce” è un trend in crescita e molte grosse realtà, a partire da Bezos di Amazon, stanno investendo molto nel mercato degli applicativi vocali. Inoltre molti nostri ...

Read MoreCome creare una Skill Alexa con Xenioo (Parte 1)

The post Come creare una Skill Alexa con Xenioo (Parte 1) appeared first on Xenioo.

]]>
La naturale evoluzione dei chatbot conversazionali è con tutta probabilità la trasformazioni verso veri e propri assistenti virtuali vocali.

Amazon Alexa, Google Assistant, Duplex ed altre tecnologie emergenti, si integreranno perfettamente all’interno dei nostri dispositivi, consentendo esperienze di conversazione sempre più simili a quelle di solito affrontate con persone reali.

Il “business della voce” è un trend in crescita e molte grosse realtà, a partire da Bezos di Amazon, stanno investendo molto nel mercato degli applicativi vocali.

Inoltre molti nostri clienti ci hanno chiesto di rendere disponibile questo tipo di integrazione all’interno di Xenioo.

Non potevamo non accettare questa sfida.

Con Xenioo è ora possibile progettare, costruire e pubblicare una Skill Alexa semplicemente creando un chatbot Xenioo come faresti per qualsiasi dei canali già disponibili.

In questo articolo andremo a vedere nel dettaglio esattamente come costruire una Skill Alexa capace di riprodurre la tua musica personale indipendentemente da dove si trova il tuo dispositivo.

Fantastico, vero? Continua a leggere.

Se ti interessa scoprire come costruire una Action Google Assistant, Xenioo supporta anche questo. Dettagli nel nostro articolo dedicato.

Creaiamo il Developer Account di Alexa

Ogni Skill di Alexa deve essere creata all’interno di un account di sviluppatore Alexa (Alexa Development Account).

La creazione di questo account è gratuita e puoi utilizzare, se preferisci, lo stesso account che già utilizzi per gli acquisti su Amazon.

Ogni Skill in stato di test viene automaticamente distribuita su tutti i dispositivi associati al tuo account di sviluppo. E’ quindi una buona idea utilizzare lo stesso account che stai utilizzando sui tuoi dispositivi.

Tieni presente che se desideri aggiornare lo stato del tuo account su ogni dispositivo, sarà necessario procedere prima alla de-registrazione e successivamente alla registrazione, come spiegato nella documentazione tecnica di Alexa.

Dopo che l’account di sviluppo è stato impostato, sei pronto per creare la tua prima Skill Alexa.

Esistono una moltitudine di templates che ti permettono di creare Skills con uno sforzo minimo e molto rapidamente, ma con il limite di lasciare poco controllo su quelle che la Skill potrà fare.

Per il nostro esempio andremo a selezionare una Skill completamente personalizzata (“Custom”).

Successivamente, andremo a selezionare che intendiamo cominciare da zero (“Start from scratch”), proseguendo nella sezione Builder.

Dal momento che vogliamo costruire una Skill che faccia streaming audio, andremo a cliccare sul bottone “Interfaces” per poi abilitare l’interfaccia “Audio Player”.

Perfetto! Per ora non ci serve più niente dal pannello sviluppatore di Alexa. Possiamo quindi procedere nella configurazione del servizio di streaming.

Configuriamo il servizio di Streaming

Nel nostro esempio non vogliamo usare un servizio di streaming generico, come tanti disponibili online.

Ci interessa invece ascoltare musica dalla nostra collezione musicale che abbiamo pazientemente creato e curato nel corso degli anni e che si trova depositata su uno o più dischi del nosto network casalingo.

Per fare tutto questo, dobbiamo integrare Xenioo con un altro eccezionale servizio: Epicentric.

Epicentric è un servizio online che ti consente di caricare la tua musica personale per ascoltarla ovunque ti trovi.

Inoltre ti permette di creare playlist multiple ed avanzata, basate su mappe mentali e che verranno automaticamente gestite dalla intelligenza artificiale della piattaforma.

Esattamente come abbiamo fatto per l’account Alexa, dovremo procedere a creare un account anche su Epicentric. E’ gratuito e dopo una veloce introduzione per capire come utilizzarlo, saremo pronti per procedere con la creazione della nostra Skill.

La conversazione con Alexa

Alexa è costruito attorno al concetto di interazione conversazionale libera: la conversazione tra l’utente ed Alexa (e quindi il tuo chatbot) non può avere veri flussi predefiniti.

Infatti un utente potrebbe dire qualsiasi cosa, in qualsiasi momento e con diversi livelli di informazioni presenti.

Vediamo un esempio qui sotto:

Seppure estramente semplice, l’esempio di conversazione sopra riportato rappresenta il perfetto scambio utente – Alexa: l’utente esprime esattamente la sua richiesta e la Skill risponde di conseguenza.

Purtroppo non possiamo aspettarci che tutte le conversazioni siano cosi lineari e precise. Anzi, molto spesso il tipo di conversazione che avvine è più simile all’esempio sottostante:

Come puoi vedere, l’utente non stà dando tutte le informazioni alla prima interazione, e questo porta la Skill a dover riformulare alcune domande per poter arrivare ad ottenere tutte le informazioni necessarie a completare la richiesta.

Le informazioni richieste dalla Skill sono chiamate Slots e possono essere paragonate a quelle che in Xenioo sono le Entità NLP e Variabili durante un conversazione standard con un chatbot.

Creiamo il chatbot vocale

Con le informazioni che abbiamo appreso nel paragrafo precedente, possiamo ora proseguire finalmente nella creazione del nostro chatbot per Alexa.

Non sarà molto diverso dalla creazione di un chatbot conversazionale standard: dal momento che, come abbiamo detto precedentemente, non ci sarà un vero e proprio flusso guidato, possiamo andare direttamente nella sezione AI per configurare tutta la NLP necessario per guidare la nostra Skill.

All’interno della sezione AI di Xenioo, andremo a definire tutti gli intenti e le espressioni che saranno usate per creare il modello conversazionale della Skill, definendo allo stesso tempo come verrà eseguito il flusso.

In base al tipo di Skill che si sta creando, potrebbe essere necessario implementare degli specifici intenti.

Per la nostra Skill di streaming, per esempio, è necessario implementare almeno due tipi di intenti specifici: Pause e Resume.

Oltre questi due, obbligatori, potrai poi creare quanti più intenti ti servono per far gestire la conversazione ad Alexa nel modo desiderato.

Qualsiasi cosa venga detto ad Alexa verrà processato dagli intenti definiti e passato a Xenioo, che a sua volta redirigerà il flusso alle interazioni configurate.

Lo schema sottostante illustra cosa effettivamente accade dietro le quinte:

Xenioo utilizza l’ Alexa SSML in ogni testo che è spedito indietro all’utente. Sei quindi libero di poter usare ogni interruzione, sospiro o qualsiasi altro tag supportato per ottenere specifici effetti vocali.

Una volta che hai creato i tuoi intenti, ricordati di collegarli alle interazioni del chatbot. Infatti qualsiasi cosa detta dall’utente attiverà uno degli intenti esistenti e solo gli intenti che sono collegati ad una interazione esistente saranno pubblicati nella Skill.

Inoltre, se vuoi implementare o sovrascrivere uno degli intenti predefiniti in Alexa (come per esempio il Resume oppure Pause), ricorda di specificare la chiave Alexa nel campo Key dell’intento, come mostrato nell’immagine sottostante.

Pubblichiamo il chabot in una Skill Alexa

Siamo arrivati al punto in cui finalmente possiamo pubblicare il nostro chatbot nella nostra prima Skill Alexa e cominciare a fare dei veri test sui dispositivi.

Possiamo farlo come sempre cliccando sul bottone Publish dalla sezione Build del chatbot.

Nella sezione dei canali, selezioniamo Alexa e clicchiamo sul bottone di login con logo Amazon. Seguite la procedura che vi porterà a connettere il vostro profilo Amazon con Xenioo: è in questo modo che Xenioo potrà pubblicare la vostra Skill per voi.

Dopo aver confermato il collegamento tra gli account ed i permessi richiesti, possiamo continuare con la configurazione della pubblicazione della Skill.

Nella sezione Deploy dovrete selezionare la Skill da pubblicare, la localizzazione ed il testo per l’attivazione.

Il testo di attivazione sarà usato da Alexa per attivare la tua skill, quindi cerca di utilizzare una parola o una frase che isa semplice da ripetere e che non possa andare in conflitto che le frasi di default di Alexa.

La configurazione più importante in questa sezione è l’ Hook Url: copiate questo URL ed incollatelo nella configurazione dell’endpoint nel pannello di Alexa per skill che si sta configurando.

Tieni presente che Xenioo aggiornerà unicamente l’ Invocation Model della Skill, dal momenteo che è ciò che permette la gestione della conversazione. Xenioo non andrà mai a sovrascrivere nessun settaggio configurato dal pannello nativo di configurazione della Skill Alexa.

Xenioo è il “middleware back-end” perfetto e la piattaforma basata su intelligenza artificiale ideale per progettare anche le skill più compesse. E lo fa decisamente bene.

Una volta che tutto è stato configurato correttamente, cliccate Publish e la Skill sarà pronta per essere testata dal dispositivo.

Nel nostro prossimo articolo, vedremo come funzionano nel dettaglio lo Streaming, Account Linking (collegamento degli account) e Device State Management (gestione dello stato del dispositivo).

The post Come creare una Skill Alexa con Xenioo (Parte 1) appeared first on Xenioo.

]]>
/come-creare-una-skill-alexa-con-xenioo-parte-1/feed/ 0