Write cross-platform chat bots with a simple to use, yet powerful API in PHP. Developed and well documented by Marcel Pociot.
BotMan is a PHP messaging and chatbot library.
Features:
One Codebase - Multiple Services: BotMan's key feature is allowing developers to write their chatbot logic once and then connect that single codebase to various supported messaging services.
Wide Platform Support: It supports connectivity to numerous platforms, including Amazon Alexa, Facebook Messenger, Slack, Telegram, or even a custom Website.
Driver System: Support for new messengers is described as easy. Drivers for services like Slack, Facebook, Amazon Alexa, and Web can be easily added using Composer (e.g., composer require botman/driver-slack).
Framework Agnostic: BotMan can be used in existing codebases, meaning it is compatible regardless of the PHP framework a developer might already be using.
BotMan Studio: For developers starting a new chatbot project from scratch, BotMan Studio is provided as a Laravel 5.5 boiler project to facilitate rapid initiation.
Readable and Expressive Syntax: The library is designed around an expressive, yet powerful syntax. This focus on readability allows developers to concentrate on the business logic rather than boilerplate framework code.
Handling User Input: The framework uses methods like hears() to listen for specific user input (e.g., hears('Hello BotMan!')).
Responding and Continuing Conversation: Developers can define actions such as replying ($bot->reply('Hello!')), asking follow-up questions ($bot->ask('Whats your name?')), and saying final responses ($bot->say('Welcome '.$answer->getText())).