Weave Code
Weaver
Helps Laravel developers discover, compare, and choose open-source packages. See popularity, security, maintainers, and scores at a glance to make better decisions.
Feedback
Share your thoughts, report bugs, or suggest improvements.
Subject
Message
Botman Bundle

Botman Bundle Laravel Package

sgomez/botman-bundle

Symfony bundle that integrates the BotMan chatbot framework into Symfony applications, making it easy to configure messaging platforms, register conversation handlers, and build conversational interfaces using familiar Symfony services and configuration.

View on GitHub
Deep Wiki
Context7

BotMan integration for Symfony

Frequently asked questions about Botman Bundle
Is sgomez/botman-bundle a Laravel package?
No. sgomez/botman-bundle is a Symfony bundle that wraps the BotMan chatbot framework; it ships a Bundle class, a DI extension with a Configuration tree, compiler passes, and a webhook controller wired into Symfony's HTTP kernel. None of that maps onto Laravel's service container lifecycle, so there is no service provider, facade, or config file you can publish into a Laravel app.
How do I install sgomez/botman-bundle?
Run composer require sgomez/botman-bundle and let Composer resolve the graph, treating a clean resolution as the go/no-go gate. Then register the bundle in config/bundles.php under Symfony Flex and import its configuration under config/packages/. Before installing, check composer.json for the Symfony and BotMan major constraints and confirm they resolve on your PHP version; do not use --ignore-platform-reqs to force it.
Does sgomez/botman-bundle work with Laravel?
Not directly. The bundle's controllers and DI wiring assume Symfony's HTTP kernel and event dispatcher, so you cannot drop it into a Laravel application. The equivalent in Laravel is roughly a hundred lines: bind botman/botman through a service provider, register the channel driver as a singleton, and route the webhook through your own controller.
Which BotMan and Symfony versions does sgomez/botman-bundle require?
Expect older constraints: a low-star package of this vintage is typically pinned to BotMan 2.x and an older Symfony major. Read composer.json rather than assuming, and verify three things explicitly: Symfony major support, BotMan major support, and the PHP version ceiling. Pin the bundle and the driver SDKs together and commit the lockfile.
How do I configure messaging channels in sgomez/botman-bundle?
Channels, middleware, and the conversation store are configured through the bundle's Configuration tree, usually in config/packages/botman.yaml. You register each messaging driver with its credentials and list the middleware that should run on incoming messages. Multi-channel setups multiply the SDK and webhook surface area, so start with one channel for v1.
How do I register conversation handlers with sgomez/botman-bundle?
Handlers are ordinary Symfony services implementing BotMan's Conversation or Hearing interfaces, discovered through the container rather than registered by hand. The bundle wires them into BotMan's dispatcher, so ordering and first-match semantics come from BotMan core, not the bundle. Porting handlers from another framework is near-mechanical, but dispatch ordering is where regressions hide.
How do I secure the BotMan webhook endpoint?
The bundle does not implement webhook security itself; signature and secret verification, replay protection, and idempotency live in BotMan core and the per-channel driver SDKs. Your team owns auditing those, rotating secrets, and setting an availability SLO for an internet-facing endpoint. Treat the webhook route as a public API surface, not an internal one.
How should I store BotMan conversations in production?
BotMan's default in-memory or array conversation store is fine for a spike and unacceptable in production. Configure a persistent backend, typically cache or database, and confirm it survives horizontal scaling across multiple app instances. Conversation records contain user content, so apply the same retention and access rules you would to any user data.
Is sgomez/botman-bundle actively maintained?
Treat maintenance risk as high: roughly one maintainer, a low quality score, no visible release cadence, and no documented security response path. The license is permissive, so the realistic posture is fork-and-own rather than depend-and-hope. Keep the fork small, pin the driver SDKs, and budget days rather than quarters for inlining the bundle into your app.
What should I use instead of sgomez/botman-bundle in Laravel?
Skip the bundle and integrate botman/botman directly: a service provider to bind the BotMan instance, a singleton for the channel driver, and a controller for the webhook. That reproduces essentially all of the bundle's value in about a day and leaves you owning the code. Evaluate it against maintained alternatives on total cost of ownership rather than feature checklist, since the BotMan ecosystem moves slowly.
Weaver

How can I help you explore Laravel packages today?

Conversation history is not saved when not logged in.
Prompt
Add packages to context
No packages found.
middlewares/firewall
qubiqx/montapacking
nyoncode/laravel-package-console
pnscripts/filament-broadquill-lite
pnscripts/laravel-sentfold-lite
vleap/mx-sdk-laravel-internal
twidpay/utils
htetmyathlaing/scout-elasticsearch-driver
artisan-toolbox/front-awesome
ls/client-assistant
users-au/laravel-client
cgv/localized-resource
noith/settings
kda/laravel-package
kda/filament-dynamic-navigation
bypersoft/signbox
pairus/product-data
fayne/laravel-filament-cms-core
nodisrupt/laravel-agent
sierratecnologia/media-manager