Chatbots have come a long way since then. They are built on AI technologies, including deep learning, natural language processing and  machine learning algorithms, and require massive amounts of data. The more an end user interacts with the bot, the better voice recognition becomes at predicting what the appropriate response is when communicating with an end user.
Open domain chatbots tends to talk about general topics and give appropriate responses. In other words, the knowledge domain is receptive to a wider pool of knowledge. However, these bots are difficult to perfect because language is so versatile. Conversations on social media sites such as Twitter and Reddit are typically considered open domain — they can go in virtually any direction. Furthermore, the whole context around a query requires common sense to understand many new topics properly, which is even harder for computers to grasp.
The most widely used anti-bot technique is the use of CAPTCHA, which is a form of Turing test used to distinguish between a human user and a less-sophisticated AI-powered bot, by the use of graphically-encoded human-readable text. Examples of providers include Recaptcha, and commercial companies such as Minteye, Solve Media, and NuCaptcha. Captchas, however, are not foolproof in preventing bots as they can often be circumvented by computer character recognition, security holes, and even by outsourcing captcha solving to cheap laborers.

Great explanation, Matthew. We just launched bot for booking appointment with doctors from our healthcare platform . 2nd extension coming in next 2 weeks where patients will get first level consultation based on answers which doctors gave based on similar complaints and than use it as a funnel strategy to get more appointments to doctor. We provide emr for doctors so have rich data there. I feel facebook needs to do more on integration of messenger with website from design basis. Different tab is pretty ugly, it should be modal with background active. So that person can discuss alongside working.

While messaging and voice interfaces are central components, they fit into a larger picture of increasing infusion of technology into our daily lives, which in turn is unlocking new potential for brand-to-consumer interaction. The fact is, technology overall is becoming more deeply woven into our lives, and the entire ecosystem is enjoying tighter cohesion through the increasing availability and sophistication of APIs. Smart companies are finding new and innovative touch points with consumers that are contextual, relevant, highly personal, and yes, conversational. Commerce is becoming not only more conversational but more ubiquitous and seamlessly integrated into our lives, and the way we interact with brands will be forever changed as a result.

Logging. Log user conversations with the bot, including the underlying performance metrics and any errors. These logs will prove invaluable for debugging issues, understanding user interactions, and improving the system. Different data stores might be appropriate for different types of logs. For example, consider Application Insights for web logs, Cosmos DB for conversations, and Azure Storage for large payloads. See Write directly to Azure Storage.
In 1950, Alan Turing's famous article "Computing Machinery and Intelligence" was published,[7] which proposed what is now called the Turing test as a criterion of intelligence. This criterion depends on the ability of a computer program to impersonate a human in a real-time written conversation with a human judge, sufficiently well that the judge is unable to distinguish reliably—on the basis of the conversational content alone—between the program and a real human. The notoriety of Turing's proposed test stimulated great interest in Joseph Weizenbaum's program ELIZA, published in 1966, which seemed to be able to fool users into believing that they were conversing with a real human. However Weizenbaum himself did not claim that ELIZA was genuinely intelligent, and the introduction to his paper presented it more as a debunking exercise: