The plugin aspect to Chatfuel is one of the real bonuses. You can link up to all sorts of different services to add richer content to the conversations that you're having. This includes linking up to Twitter, Instagram and YouTube, as well as being able to request that the user share their location, serve video and audio content, and build out custom attributes that can be used to segment users based on their inputs. This last part is a killer feature.
There is a general worry that the bot can’t understand the intent of the customer. The bots are first trained with the actual data. Most companies that already have a chatbot must be having logs of conversations. Developers use that logs to analyze what customers are trying to ask and what does that mean. With a combination of Machine Learning models and tools built, developers match questions that customer asks and answers with the best suitable answer. For example: If a customer is asking “Where is my payment receipt?” and “I have not received a payment receipt”, mean the same thing. Developers strength is in training the models so that the chatbot is able to connect both of those questions to correct intent and as an output produces the correct answer. If there is no extensive data available, different APIs data can be used to train the chatbot.
Lack contextual awareness. Not everyone has all of the data that Google has – but chatbots today lack the awareness that we expect them to have. We assume that chatbot technology will know our IP address, browsing history, previous purchases, but that is just not the case today. I would argue that many chatbots even lack basic connection to other data silos to improve their ability to answer questions.
Whilst the payout wasn't huge within the early days of Amazon, those who got in early are now seeing huge rewards, with 38% of shoppers starting their buying journey within Amazon (source), making it the number one retail search engine. Some studies are suggesting that Amazon is responsible for 80% of e-commerce growth for publicly traded web retailers (source).

You can structure these modules to flow in any way you like, ranging from free form to sequential. The Bot Framework SDK provides several libraries that allows you to construct any conversational flow your bot needs. For example, the prompts library allows you to ask users for input, the waterfall library allows you to define a sequence of question/answer pair, the dialog control library allows you to modularized your conversational flow logic, etc. All of these libraries are tied together through a dialogs object. Let's take a closer look at how modules are implemented as dialogs to design and manage conversation flows and see how that flow is similar to the traditional application flow.
ETL. The bot relies on information and knowledge extracted from the raw data by an ETL process in the backend. This data might be structured (SQL database), semi-structured (CRM system, FAQs), or unstructured (Word documents, PDFs, web logs). An ETL subsystem extracts the data on a fixed schedule. The content is transformed and enriched, then loaded into an intermediary data store, such as Cosmos DB or Azure Blob Storage.
However, the revelations didn’t stop there. The researchers also learned that the bots had become remarkably sophisticated negotiators in a short period of time, with one bot even attempting to mislead a researcher by demonstrating interest in a particular item so it could gain crucial negotiating leverage at a later stage by willingly “sacrificing” the item in which it had feigned interest, indicating a remarkable level of premeditation and strategic “thinking.”
Tay, an AI chatbot that learns from previous interaction, caused major controversy due to it being targeted by internet trolls on Twitter. The bot was exploited, and after 16 hours began to send extremely offensive Tweets to users. This suggests that although the bot learnt effectively from experience, adequate protection was not put in place to prevent misuse.[56]
ELIZA's key method of operation (copied by chatbot designers ever since) involves the recognition of clue words or phrases in the input, and the output of corresponding pre-prepared or pre-programmed responses that can move the conversation forward in an apparently meaningful way (e.g. by responding to any input that contains the word 'MOTHER' with 'TELL ME MORE ABOUT YOUR FAMILY').[9] Thus an illusion of understanding is generated, even though the processing involved has been merely superficial. ELIZA showed that such an illusion is surprisingly easy to generate, because human judges are so ready to give the benefit of the doubt when conversational responses are capable of being interpreted as "intelligent".
×