First you need to pull in the Bot Framework Driver.
composer require botman/driver-botframework
Then load the driver before creating the BotMan instance (only when you don't use BotMan Studio):
DriverManager::loadDriver(\BotMan\Drivers\BotFramework\BotFrameworkDriver::class);
// Create BotMan instance
BotManFactory::create($config);
Or if you use BotMan Studio:
php artisan botman:install-driver botframework
This driver requires a valid and secure URL in order to set up webhooks and receive events and information from the chat users. This means your application should be accessible through an HTTPS URL.
{callout-info} ngrok is a great tool to create such a public HTTPS URL for your local application. If you use Laravel Valet, you can create it with "valet share" as well.
Register a developer account with the Bot Framework Developer Portal and follow this guide to register your first bot with the Bot Framework.
When you set up your bot, you will be asked to provide a public accessible endpoint for your bot.
Place the URL that points to your BotMan logic / controller in this field.
Take note of your App ID and App Key assigned to your new bot and place it in your BotMan configuration.
If you use BotMan Studio, you can find the configuration file located under config/botman/botframework.php
.
If you dont use BotMan Studio, add these line to $config array that you pass when you create the object from BotManFactory.
'botframework' => [
'app_id' => 'YOUR-MICROSOFT-APP-ID',
'app_key' => 'YOUR-MICROSOFT-APP-KEY',
]
This is a list of features that the driver supports. If a driver does not support a specific action, it is in most cases a limitation from the messaging service - not BotMan.
Feature | Supported? |
---|---|
Question-Buttons | ✅ |
Image Attachment | ✅ |
Video Attachment | ✅ |
Audio Attachment | ✅ |
Location Attachment | ✅ |